Javascript Jquery每秒选择一个随机单元格
我正在寻找一种方法来选择一个div的六个十几岁,其中一个需要改变它的CSS背景。它还需要每秒发生一次,因此每秒都会从其他div中选择一个新div 我被困在每一个第二部分,这是我拥有的部分(不是自制的): 我的HTML代码:Javascript Jquery每秒选择一个随机单元格,javascript,jquery,html,Javascript,Jquery,Html,我正在寻找一种方法来选择一个div的六个十几岁,其中一个需要改变它的CSS背景。它还需要每秒发生一次,因此每秒都会从其他div中选择一个新div 我被困在每一个第二部分,这是我拥有的部分(不是自制的): 我的HTML代码: <div id="content"> <h1>Random plaatjes</h1> <div class="pics"> <div class="heading">
<div id="content">
<h1>Random plaatjes</h1>
<div class="pics">
<div class="heading">
<div class="cell" id="cell">
Plaatjes 1
</div>
<div class="cell" id="cell">
Plaatjes 2
</div>
<div class="cell" id="cell">
Plaatjes 3
</div>
<div class="cell" id="cell">
Plaatjes 4
</div>
</div>
<div class="row">
<div class="cell" id="cell">
Plaatje 1
</div>
<div class="cell" id="cell">
Plaatje 2
</div>
<div class="cell" id="cell">
Plaatje 3
</div>
<div class="cell" id="cell">
Plaatje 4
</div>
</div>
<div class="row">
<div class="cell" id="cell">
Plaatje 1
</div>
<div class="cell" id="cell">
Plaatje 2
</div>
<div class="cell" id="cell">
Plaatje 3
</div>
<div class="cell" id="cell">
Plaatje 4
</div>
</div>
<div class="row">
<div class="cell" id="cell">
Plaatje 1
</div>
<div class="cell" id="cell">
Plaatje 2
</div>
<div class="cell" id="cell">
Plaatje 3
</div>
<div class="cell" id="cell">
Plaatje 4
</div>
</div>
<div class="row">
<div class="cell" id="cell">
Plaatje 1
</div>
<div class="cell" id="cell">
Plaatje 2
</div>
<div class="cell" id="cell">
Plaatje 3
</div>
<div class="cell" id="cell">
Plaatje 4
</div>
</div>
</div>
</div>
随机平板
普拉特耶斯1号
普拉特耶斯2号
普拉特耶斯3
普拉特耶斯4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
普拉杰1号
普拉杰2号
普拉杰3号
普拉杰4号
以我的方式,我希望每秒选择一个带有红色边框的随机id=“cell”或其他内容。
如果你们能帮我找到正确的方法,我会非常感激!感谢您的帮助,并为我糟糕的英语(不是我的母语)感到抱歉。首先,
id
属性是唯一的,这意味着您不能有多个具有相同id的元素
为了达到您想要的效果,您可以将Math.random()
与window.setInterval()结合使用:
.首先,id
属性是唯一的,这意味着不能有多个元素具有相同的id
为了达到您想要的效果,您可以将Math.random()
与window.setInterval()结合使用:
.首先,正如评论中的其他人所述,具有重复的id
属性是无效的,因此您需要从HTML中删除id=“cell”
其次,您可以通过获取页面中.cell
元素的数量,然后在该数量和零之间选择一个随机数来实现这一点。然后可以通过eq()
方法获得所选元素。最后,您可以使用setInterval()
函数每秒运行一次代码。试试这个:
function highlight() {
var $divs = $('.cell').removeClass('highlight');
var random = Math.floor(Math.random() * $divs.length);
$divs.eq(random).addClass('highlight');
}
highlight(); // run on load
setInterval(highlight, 1000); // then every 1 second afterward
首先,正如评论中的其他人所述,具有重复的id
属性是无效的,因此您需要从HTML中删除id=“cell”
其次,您可以通过获取页面中.cell
元素的数量,然后在该数量和零之间选择一个随机数来实现这一点。然后可以通过eq()
方法获得所选元素。最后,您可以使用setInterval()
函数每秒运行一次代码。试试这个:
function highlight() {
var $divs = $('.cell').removeClass('highlight');
var random = Math.floor(Math.random() * $divs.length);
$divs.eq(random).addClass('highlight');
}
highlight(); // run on load
setInterval(highlight, 1000); // then every 1 second afterward
首先,确保在加载页面时选择了一个随机单元格(在本例中,我添加了一个类“active”——可能是其他类型):
然后,每隔一秒钟,首先从活动单元格中删除活动类,然后将其添加到另一个随机单元格中:
window.setInterval(function(){
$('.cell.active').removeClass('active');
var allCells = $('.cell');
var index = Math.floor(Math.random() * allCells.length);
allCells.eq(index).addClass('active');
}, 1000);
这里有一个小问题:首先,确保在加载页面时选择了一个随机单元格(在本例中,我添加了一个类“active”-可能是其他类型):
然后,每隔一秒钟,首先从活动单元格中删除活动类,然后将其添加到另一个随机单元格中:
window.setInterval(function(){
$('.cell.active').removeClass('active');
var allCells = $('.cell');
var index = Math.floor(Math.random() * allCells.length);
allCells.eq(index).addClass('active');
}, 1000);
这里有一个问题:id=“cell”
100次是不正确的标记。每个页面的ID必须是唯一的。想象有100个人拥有相同的保险号码……抓取div.cell
的集合,然后您可以使用math.random
从集合中选择一个单元格。并使用setTimeout
每隔一天执行一次second@RokoC.Buljan我已经删除了,谢谢@废可乐我会查的,谢谢你的回复id=“cell”
100次是不正确的标记。每个页面的ID必须是唯一的。想象有100个人拥有相同的保险号码……抓取div.cell
的集合,然后您可以使用math.random
从集合中选择一个单元格。并使用setTimeout
每隔一天执行一次second@RokoC.Buljan我已经删除了,谢谢@废可乐我会查的,谢谢你的回复!