作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想弄清楚如何使用未知数量的元素构建 forEach 循环。随机选择一个,对它做 XYZ。让它可见。从考虑中删除该元素。重复从剩余元素中选择一个随机数。
到目前为止,我的想法是制作一个元素 id 的数组。使用 array.forEach() 遍历它们。从数组中随机选择一个元素。执行 XYZ 然后从数组中删除选定的 id 然后重复直到 forEach 过期。
所以首先,如果您能想到更好的方法,我愿意接受任何和所有想法。
我没走多远就遇到了我的第一个障碍,那就是动态生成 ID 数组。
我得到了元素的数量(它们总是父元素的子元素,所以不用担心。
//get count of all elements and loop till all are visible
var elementCount = $('#PartialsContainer').children().size();
接下来我将生成我的数组,但它会导致数组中的一个元素保存 elementCount 的值。
//create array of quantity
var elementArray = $.makeArray( elementCount );
所以我可以像这样通过元素循环获取它们的 id 但肯定有更好的方法吗?
for (var i = 0; i < elementCount; i++)
{
elementArray.push( $element[i] //its pseudo code I know it won't work );
}
感谢您提供有关改进此设计/方法的任何想法/技巧。
最佳答案
尝试类似的东西
var $els = $('#PartialsContainer').children();
while($els.length){
var $el = $els.eq(Math.floor(Math.random() * $els.length));
//do something with $el
$els = $els.not($el);
}
演示:Fiddle
关于javascript - Jquery循环未知数量的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20532724/
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Combination of List> 我有多个列表,可以是 2 个或 3 个,最多 10 个列表,有多个
我是一名优秀的程序员,十分优秀!