javascript - 如何在jquery中获取随机元素?

标签 javascript jquery

我如何通过执行类似 $(.class).random.click() 的操作在 jQuery 中返回一个随机元素?

因此,如果 .class 有 10 个链接,它会随机点击其中一个。

这是我做的:

var rand_num = Math.floor(Math.random()*$('.member_name_and_thumb_list a').size());
$(".member_name_and_thumb_list a").eq(rand_num).click();

最佳答案

您可以编写自定义过滤器 ( taken from here ):

jQuery.jQueryRandom = 0;
jQuery.extend(jQuery.expr[":"], {
    random: function(a, i, m, r) {
        if (i == 0) {
            jQuery.jQueryRandom = Math.floor(Math.random() * r.length);
        };
        return i == jQuery.jQueryRandom;
    }
});

示例用法:

$('.class:random').click()

同样的东西,但是作为一个插件:

​jQuery.fn.random = function() {
    var randomIndex = Math.floor(Math.random() * this.length);  
    return jQuery(this[randomIndex]);
};

示例用法:

$('.class').random().click()

关于javascript - 如何在jquery中获取随机元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3614944/

相关文章:

javascript - 具有可变边距的窗口调整大小()的动态高度()

javascript - 发送 jqueryAjax 请求时出现错误

javascript - 为什么 'this' 在调试器中未定义但可在 console.log 中打印?

javascript - 如何创建javascript执行器以使元素在selenium webdriver中可见

javascript - 如何根据选择框显示输入并删除它?

javascript - jquery 触摸导航

javascript - 如何在 reactjs 中验证表单

javascript - 如何从 .resx 文件获取字符串到 .js 文件

javascript - 目标 <td> 位于同一 <tr> 中

javascript - Jquery 以编程方式单击没有唯一 ID 或类的按钮