今天就做個九宮格的簡易拼圖,最讓我頭疼的就是點擊開始打亂圖片位置。一開始在百度查看相關博客,走了很多彎路。最后看了眾多的例子,自己寫了個方法。
1 <script>
2 //打亂圖片方法
3 function fun(){
4 var x = [];
5 var y ;
6 for(var i=1;i<10;i++){
7 var div = document.getElementById("d"+i+"");
8 div.removeChild(document.getElementById("img"+i+""));
9 }
10 for(var i=1;i<10;i++){
11 var img = document.createElement('img'); //動態創建img標簽 12 var div1 = document.getElementById("d"+i+"");
13 var p = [1,2,3,4,5,6,7,8,9]; //用p[]數組保存圖片的代號 14 var j = Math.round(Math.random()*8); //通過隨機數j產生隨機圖片代號p[j] 15 for ( var u=0 ; u < x.length ; u++ ) //遍歷x[]數組防止后面出現與前面一樣的圖片代號
16 {
17 if ( x[u] == p[j] )
18 {
19 y = x[u];
20 break;
21 }
22 }
23 if(p[j]==y){
24 i-=1;
25 continue;
26 }else{
27 img.setAttribute("src","images/tiger_0"+p[j]+".gif");
28 img.id = "img"+i+"";
29 }
30 div1.appendChild(img);
31 x.push(p[j]); //添加已經出現的圖片號數進入x[]數組
32 }
33 dragdrop();//拖動圖片方法
34 }
35 </script>
點擊開始可以達到隨機打亂圖片位置的效果。

