홈으로 홈으로 | 무료회원가입 | 아이디/비번찾기 | 즐겨찾기
추천음악방송메인홈1대1상담음악방송청취
운.영.자.1대1.상담

온라이브음악방송
온라이브스토어(앱다운로드)
아리랑가요(무료음악채널)
뽕짝아가씨(무료음악채널)
okTrot(무료음악채널)
전통가요(무료음악채널)

환상의뽕짝파티 무료음악
명작트로트메들리 무료음악
트로트메들리관광 무료음악
동영상노래방
가사검색

POP Player
신나는 고스톱
컴퓨터 오목
작은 음악다방
최신 인기가요

보안∵서버∵쿠키
윈도우∵프레임
이미지∵배경
시간∵달력∵계산
상태바∵타이틀바
음악∵영상
폼∵전송∵테이블
키보드∵마우스
효과∵링크∵메뉴
Script∵php
기타
PHP 강좌
윈도우관련팁
웹관련팁
홈페이지제작팁
기본강좌
레지스트리
윈도우서버
리눅스서버
Android
자바스크립트로 작성한 그림맞추기 퍼즐게임 만들기
홈페이지홈페이지 15년 전
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>퍼즐</title>
<script language="JavaScript">
<!--
//////////////////////////////////////////////////////////////////////////////
// 사용자 설정
//////////////////////////////////////////////////////////////////////////////
var h_count = 5;                                      // 가로로 쪼갤 갯수
var v_count = 4;                                      // 세로로 쪼갤 갯수
var p_img = "puzzle_copy.jpg";                // 사용할 이미지
var p_width = 455;                                   // 이미지 폭
var p_height = 340;                                  // 이미지 높이
var blank_point = 2;                                 // 상좌:1, 상우:2, 하좌:3, 하우:4

function complete_job() {                        // 끝났을때 할 일
        alert('축하합니다.');
}
//////////////////////////////////////////////////////////////////////////////



var init_x = 0;
var init_y = 0;

var cell_width = eval(p_width / h_count);
var cell_height = eval(p_height / v_count);

var cur_x;
var cur_y;
var shuffle_now = false;

function move_clip(i, j) {
        if (i-1 >= 0 && eval("puzzle_"+(i-1)+"_"+j+".innerHTML") == "") {
                eval("puzzle_"+(i-1)+"_"+j+".innerHTML=puzzle_"+i+"_"+j+".innerHTML");
                eval("puzzle_"+i+"_"+j+".innerHTML=''");
                cur_x = i;
                cur_y = j;
        }

        if (i+1 < v_count && eval("puzzle_"+(i+1)+"_"+j+".innerHTML") == "") {
                eval("puzzle_"+(i+1)+"_"+j+".innerHTML=puzzle_"+i+"_"+j+".innerHTML");
                eval("puzzle_"+i+"_"+j+".innerHTML=''");
                cur_x = i;
                cur_y = j;
        }
        
        if (j-1 >= 0 && eval("puzzle_"+i+"_"+(j-1)+".innerHTML") == "") {
                eval("puzzle_"+i+"_"+(j-1)+".innerHTML=puzzle_"+i+"_"+j+".innerHTML");
                eval("puzzle_"+i+"_"+j+".innerHTML=''");
                cur_x = i;
                cur_y = j;
        }
        
        if (j+1 < h_count && eval("puzzle_"+i+"_"+(j+1)+".innerHTML") == "") {
                eval("puzzle_"+i+"_"+(j+1)+".innerHTML=puzzle_"+i+"_"+j+".innerHTML");
                eval("puzzle_"+i+"_"+j+".innerHTML=''");
                cur_x = i;
                cur_y = j;
        }
        
        if (shuffle_now==false) {complete_check();}
}

function shuffle() {
        shuffle_now = true;
        rnd_x = eval(cur_x + Math.round(Math.random()*2) - 1);
        rnd_y = eval(cur_y + Math.round(Math.random()*2) - 1);

        if (rnd_x<0) {rnd_x=0;}
        if (rnd_y<0) {rnd_y=0;}
        if (rnd_x>=v_count) {rnd_x=v_count-1;}
        if (rnd_y>=h_count) {rnd_y=h_count-1;}

        move_clip(rnd_x, rnd_y);
}

function shuffle_all() {
        shuffle_rate = h_count*v_count*10;
        for (i=0; i<shuffle_rate; i++) { shuffle(); }
        shuffle_now=false;
}

function complete_check() {
        miss_match = 0;


        for (i=0; i<v_count; i++) {
                for (j=0; j<h_count; j++) {
                        if (eval("clip_"+i+"_"+j+".parentElement.id.toString()") != "puzzle_"+i+"_"+j) {
                                miss_match = miss_match + 1;
                        }
                }
        }

        if (miss_match==1) {
                complete_job();
        }
}

//-->
</script>
</head>
<body>
<table border="1">
    <tr>
        <td>
                        <script language="JavaScript">
                                document.write("<div id='layer1' style='overflow:hidden; width:"+p_width+"px; height:"+p_height+"px; position:relative; left:0px; top:0px;'>");
                                for (i=0; i<v_count; i++) {
                                        for (j=0; j<h_count; j++) {
                                                left_position = j*cell_width;
                                                top_position = i*cell_height;
                                                rel_top_position = (i*cell_height)-(j*cell_height);
                                                rel_top_position = rel_top_position - i*((h_count-1)*cell_height);
                                                rel_top_position = rel_top_position - (i*cell_height);

                                                document.write("<div id='puzzle_"+i+"_"+j+"' style='width:"+cell_width+"px; height:"+cell_height+"px; position:relative; left:"+(left_position + init_x)+"px; top:"+(rel_top_position + init_y)+"px; z-index:1; overflow : hidden;' onmouseover=\"this.style.cursor='hand'\"; onclick='move_clip("+i+", "+j+")'>");
                                                document.write("<img name='clip_"+i+"_"+j+"' src='"+p_img+"' border='0' style='position:relative; left:"+eval(left_position*(-1))+"px; top:"+eval(top_position*(-1))+"px; z-index:1;'>");
                                                document.write("</div>");
                                        }
                                }
                                document.write("</div>");


                                switch(blank_point) {
                                        case 1:
                                                eval("puzzle_0_0.innerHTML = ''");
                                                cur_x = 0;
                                                cur_y = 0;
                                                break;
                                        case 3:
                                                eval("puzzle_"+(i-1)+"_0.innerHTML = ''");
                                                cur_x = v_count - 1;
                                                cur_y = 0;
                                                break;
                                        case 2:
                                                eval("puzzle_0_"+(j-1)+".innerHTML = ''");
                                                cur_x = 0;
                                                cur_y = h_count - 1;
                                                break;
                                        case 4:
                                                eval("puzzle_"+(i-1)+"_"+(j-1)+".innerHTML = ''");
                                                cur_x = v_count - 1;
                                                cur_y = h_count - 1;
                                                break;
                                        default:                                        
                                                eval("puzzle_"+(i-1)+"_"+(j-1)+".innerHTML = ''");
                                                cur_x = v_count - 1;
                                                cur_y = h_count - 1;
                                }
                                document.write("<input type='hidden' name='clip_"+cur_x+"_"+cur_y+"'>");
                        </script>
        </td>
        <td>
                        <img src="puzzle_copy.jpg" width="455" height="340" border="0">            
        </td>
    </tr>
</table>
<br>
<input type=button value="섞기" onclick="shuffle_all()">
</body>

</html>
추천추천 : 297 추천 목록
번호 제목
3,026
 여러 도메인들 간 쿠키 공유하기
3,025
 태그 사이에 있는 텍스트를 추출
3,024
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,023
 쿠키 생성,가져오기,삭제
3,022
 사용자 함수 모음
3,021
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,020
 [HTML5] <video> - DOM으로 제어하기
3,019
 HTML5 video 태그에서 영상 좌우반전
3,018
 PHP - 특정 태그 및 문자열 추출, 제거
3,017
 [PHP] define과 defined의 차이
3,016
 우클릭 완벽차단 스크립트
3,015
 iframe 높이 100% 맞추기
3,014
 curl 함수를 이용한 HTTP REFERER 변경
3,013
 윈도우10 시스템 파일 및 Dism 검사
3,012
 텍스트 줄바꿈, 글자자르기 CSS
3,011
 jQuery Mobile에서 유용한 코드 10가지.
3,010
 [PHP] dirname()함수와 $_SERVER 관련 상수들
3,009
 [PHP] 파일 크기, 사이즈 불러오는 함수, filesize()
3,008
 [jQuery] jQuery Quick API
3,007
 [ transition ] 링크 hover 색상 변화 속도 조절
3,006
 PHP 5.3.0 에서 사라진 함수들 대체
3,005
 어떤 파일들이 include 나 require 되었는지 확인하는 함수(get_included_files)
3,004
 PHP 날짜 형식 및 계산하기(날짜 더하고 빼기)
3,003
 jQuery Mobile에서 유용한 코드 10가지.
3,002
 값이 배열 안에 존재하는지 확인하는 in_array함수
3,001
 사용자가 웹브라우저에서 뒤로가기를 했을때 감지하는 방법
3,000
 [jQuery]버튼 활성화, 비활성화
2,999
 jQuery show() / hide() / toggle() 사용법
2,998
 jquery 여러가지 이벤트
2,997
 border-radius 속성
2,996
 네이버 오픈API 음성합성 API 사용하는 PHP 샘플코드
2,995
 UTF8 한글 자르기..
2,994
 iconv 에러 발생시 계속 처리하기 옵션
2,993
 [PHP] 현재 페이지의 도메인 , URL 정보 알아내기.
2,992
 [PHP] 막강 기능 배열..
목록
추억의가요방(가사포함)
인기절정뽕짝파티
인기트로트모음
지루박디스코메들리
밤무대애창곡
전자올겐경음악
세월따라노래따라
가슴시린트로트
트로트쌍쌍파티
7080추억속으로
종합성인가요방
못잊을옛날노래
카바레 음악
트롯디스코팡팡
관광 메들리
트롯카페
가요감상실
추억의옛노래
스페셜가요광장
BillBoard Free
추천가요모음
경음악.전자올겐
스페셜음악여행
WOLRD POPs
K-POP\BillBoard
POP TOP BEST

최신인기가요특집
추천가요\인기
F뮤직 인기\발라드
F뮤직 애창\트로트
트로트성인가요
인기가요
프리미엄 POP
경음악\기타
프리미엄 최신가요
프리미엄 성인가요
가요축제\트롯1번지
댄스\메들리\리믹스
카페\명상\경음악\기타
뮤직트로트 부산광역시부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.