如果$('.my-element')
与多个元素匹配,是否可以通过快速方式从这些元素中获取随机元素?
答案 0 :(得分:26)
$.fn.random = function() {
return this.eq(Math.floor(Math.random() * this.length));
}
$(selector).random();
答案 1 :(得分:2)
要获得均匀分布,可以将随机乘以数组计数,并使用按位运算符删除小数。
var arr = ['a','b','c'];
arr[~~(Math.random() * arr.length)]; //even odds of a, b, or c
答案 2 :(得分:1)
var numElements = $('.my-element').length;
var randomNum = Math.floor(Math.random()*numElements);
//Select your random element
$('.my-element:nth-child(' + randomNum + ')');