jQuery .trigger('click')

5

我在尝试这个时遇到了些问题。我想触发第二个链接。如果有人能帮助,将不胜感激。

    $(".links").click(function () {
        alert($(this));
    })


    function someFunction(){
        $(".links").trigger('click');
    }

    someFunction();

    ...
    <a href="1.html" class="links">One</a>
    <a href="2.html" class="links">Two</a>
    <a href="3.html" class="links">Three</a>
3个回答

9

someFunction()接受一个参数,该参数是您要点击的链接的基于0的索引。

function someFunction( n ){
    $(".links:eq(" + n + ")").trigger('click');
}

someFunction( 1 ); // Pass 1 to trigger the second link

这里使用了 :eq()选择器。如果你愿意,也可以使用.eq()方法

function someFunction( n ){
    $(".links").eq( n ).trigger('click');
}

4

仅触发第二个链接:

$(".links").eq(1).trigger('click');

.eq(n)将匹配元素集合减少到指定索引处的一个元素。索引从0开始计算。


如何对所有进行此操作? - AbtPst

0

以上的解决方案对我没有用。

但是这个解决方案对我有效。

$('#elementID').click(function () {
    //some stuff
});

我需要在页面加载时触发器起作用。
$( document ).ready(function() {
    $('#elementID').trigger('click');
});

或者

如果页面加载时不需要运行,可以在函数中使用它。

function someFunction(){
    $('#elementID').trigger('click');
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接