我对jQuery很新,我正在尝试旋转6个CSS类
.img
.img1
.img2
.img3
.img4
.img5
这些类中只有一个具有“display:block;”其余的都有“display:none;”。
我试图基本上随机化这些类的外观 - 对于这6个类 - 通过使当前的“display:block”goto“display:none”然后每次页面将另一个类更改为“Display:block”加载?
有人能帮忙吗?
答案 0 :(得分:1)
var ran = rand(0,5)
$('.img').hide();
$('.img' + ran).show();
给所有元素2个类1'img',然后是一个独特的类'img1,img2等'
答案 1 :(得分:0)
只需修改所有图片的类别,不包括随机选择的图片。
伪代码:
var img_id = rand(0,5);
for (i=0;i<5; ++i)
{
if (i!=img_id)
$("image_"+img_id).class = hiddenclass;
}
答案 2 :(得分:0)
你的问题不清楚。
我假设您正在尝试随机显示与其中一个类匹配的所有元素。
您可以通过编写parseInt(Math.random() * 6, 10)
生成0到6之间的随机数。
您可以这样写:(并将.img
更改为.img0
)
var indexToShow = parseInt(Math.random() * 6, 10);
for(var i = 0; i <= 6; i++) {
if(i === indexToShow)
$('.img' + i).show();
else
$('.img' + i).hide();
}
如果您创建另一个类(例如,.img
)并将其添加到所有元素,您可以使其更简单:
$('.img').hide();
$('.img' + parseInt(Math.random() * 6, 10)).show()
答案 3 :(得分:0)
选择一个要显示,然后将它们全部隐藏,按要显示的类进行过滤,然后显示它。如果你给他们所有的共同课程会更容易,比如说img
以便更容易进行全球选择。
var showClass = '.img' + parseInt(Math.random() * 6, 10);
$('.img').hide().filter(showClass).show();
答案 4 :(得分:0)
您可以使用JQuery随机化您的样式。在CodePen上查看此示例: http://codepen.io/aziev/pen/xwpREN
// put in this array your classes
classes = ['class1', 'class2', 'class3'];
max = classes.length - 1;
currentClass = Math.round(Math.random() * max);
// change '.block' to selector of your element
$('.block').addClass(classes[currentClass]);