Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery-随机逐个隐藏一组div/图像_Jquery_Animation_Random - Fatal编程技术网

JQuery-随机逐个隐藏一组div/图像

JQuery-随机逐个隐藏一组div/图像,jquery,animation,random,Jquery,Animation,Random,我有一组可见的div/或图像。通过单击一个项目,我想隐藏其他div/图像。但它应该是 -随机 -逐个使用淡出()或隐藏()。 -(可能是动画) 我的HTML: <DIV class="myDivBox">Box no 1</DIV> <DIV class="myDivBox">Box no 2</DIV> <DIV class="myDivBox">Box no 3</DIV> <DIV class="myDivBox

我有一组可见的div/或图像。通过单击一个项目,我想隐藏其他div/图像。但它应该是
-随机
-逐个使用淡出()或隐藏()。
-(可能是动画)

我的HTML:

<DIV class="myDivBox">Box no 1</DIV>
<DIV class="myDivBox">Box no 2</DIV>
<DIV class="myDivBox">Box no 3</DIV>
<DIV class="myDivBox">Box no 4</DIV>

<DIV class="myDivBox">Box no 5</DIV>
<DIV class="myDivBox">Box no 6</DIV>
<DIV class="myDivBox">Box no 7</DIV>
<DIV class="myDivBox">Box no 8</DIV>

<DIV class="myDivBox">Box no 9</DIV>
<DIV class="myDivBox">Box no 10</DIV>
<DIV class="myDivBox">Box no 11</DIV>
<DIV class="myDivBox">Box no 12</DIV>
我使用的随机插件位于:

(函数($)
{
jQuery.fn.random=函数(num){
num=parseInt(num);
如果(num>this.length)返回this.pushStack(this);
如果(!num | | num<1)num=1;
var to_take=新数组();
每个(函数(i){to_take.push(i);});
var to_keep=新数组();
var invert=num>(this.length/2);
如果(反转)num=this.length-num;
对于(;num>0;num--){
for(var i=parseInt(Math.random()*to_take.length);i>0;i--)
推(totake.shift());
保持.推动(采取.移位());
}
如果(反转)到_keep=到_take;
返回this.filter(函数(i){return$.inArray(i,to_keep)!=-1;});
};
})(jQuery);
有没有一种方法,我可以有这个即使没有随机插件?
谢谢

当您单击
项目框
元素时,这将随机隐藏其中一个可见框:

$(function(){
  $(".item_box").click(function() {
    var $visible = $(".myDivBox:visible");
    $visible.eq(Math.floor(Math.random() * $visible.length)).hide('slow');
  });
});
这将在5秒内随机选择的时间隐藏所有框:

$(function(){
  $(".item_box").click(function() {
    $(".myDivBox").each(function(i, e){
      window.setTimeout(function() {
        $(e).hide('slow');
      }, Math.random() * 5000);
    });
  });
});

你的意思是“物品盒”和“myDivBox”有相同的类别吗?对不起,我的意思是“myDivBox”。谢谢很不错的!测试任何工程顺利。谢谢(打字错误:数学,随机…)
$(function(){
  $(".item_box").click(function() {
    var $visible = $(".myDivBox:visible");
    $visible.eq(Math.floor(Math.random() * $visible.length)).hide('slow');
  });
});
$(function(){
  $(".item_box").click(function() {
    $(".myDivBox").each(function(i, e){
      window.setTimeout(function() {
        $(e).hide('slow');
      }, Math.random() * 5000);
    });
  });
});