2012-03-01 96 views
1

对我有这样的javascript:触发鼠标输入随机元素

$('.foto').filter(function(index) { 
    return index == Math.floor(Math.random() * 8) + 1; 
}).trigger('mouseover'); 

我想模拟在一张相片的悬停效果,但不知何故过滤功能不起作用。 我也试过

$('.foto:random').trigger('mouseover'); 
+1

[jQuery:select random elements]的可能重复(http://stackoverflow.com/questions/1764160/jquery-select-random-elements) – 2012-03-01 23:02:28

+0

我已经看到,但它没有对我工作 – Mike 2012-03-01 23:04:40

+1

适用于我:http://jsfiddle.net/n3Lgn/。也许你认为整个构造返回一个jQuery对象,但它不。 '.get()'返回一个数组,'.sort()'和'.slice()'是本地数组方法。在我的例子中,我省略了'.get()'。 – 2012-03-01 23:10:07

回答

3

试试这个:

$.fn.rand = function(){ 
    return this.eq(Math.floor(Math.random()*this.length)); 
}; 
$(".foto").rand().trigger("mouseover"); 

注:你只需要定义$.fn.rand一次,通常包括jQuery的后面。

相关问题