javascript 九宫格图片随机打乱位置

  今天就做个九宫格的简易拼图,最让我头疼的就是点击开始打乱图片位置。一开始在百度查看相关博客,走了很多弯路。最后看了众多的例子,自己写了个方法。
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>
点击开始可以达到随机打乱图片位置的效果。

 

 

 

 

posted @ 2017-03-14 23:55  cx_davis  阅读(2306)  评论(0编辑  收藏  举报