网管之家

bitsCN.com > 网管学堂 > 网页设计 > Javascript >

javascript九宫格图片随机打乱位置的实现方法

今天就做个九宫格的简易拼图,最让我头疼的就是点击开始打乱图片位置。一开始在百度查看相关博客,走了很多弯路。最后看了众多的例子,自己写了个方法。

<script>
//打乱图片方法
  function fun(){
   var x = [];
   var y ;
   for(var i=1;i<10;i++){
    var div = document.getElementById("d"+i+"");
    div.removeChild(document.getElementById("img"+i+""));
   }
   for(var i=1;i<10;i++){
   var img = document.createElement('img'); //动态创建img标签
    var div1 = document.getElementById("d"+i+"");
    var p = [1,2,3,4,5,6,7,8,9];    //用p[]数组保存图片的代号
    var j = Math.round(Math.random()*8);  //通过随机数j产生随机图片代号p[j]
    for ( var u=0 ; u < x.length ; u++ ) //遍历x[]数组防止后面出现与前面一样的图片代号
     { 
      if ( x[u] == p[j] ) 
      { 
       y = x[u];
      break;
      } 
     }
    if(p[j]==y){
     i-=1;
     continue; 
    }else{
     img.setAttribute("src","images/tiger_0"+p[j]+".gif");
     img.id = "img"+i+"";
    }
    div1.appendChild(img);
    x.push(p[j]); //添加已经出现的图片号数进入x[]数组
   }
  dragdrop();//拖动图片方法
  }
</script>

点击开始可以达到随机打乱图片位置的效果,如下

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持网管之家。

参与评论
相关文章