This question already has answers here:
How to use JavaScript variables in jQuery selectors?
                                
                                    (6个答案)
                                
                        
                                5年前关闭。
            
                    
我想替换$('#divy a:lt(3)')并添加变量而不是数字$('#divy a:lt(count)'),但是它不起作用。

Fiddle

var timerId,
count = 0;

function end_counter() {
    $('#divy a:lt(3)').each(function () {
        var $this = $(this);
        $this.attr('target', '_blank');
        $this.get(0).click(function () {
            window.open(this);
            return false;
        });
    });
    count = 0;
}
$('button').click(function () {

    count++;
    clearTimeout(timerId);
    timerId = setTimeout(end_counter, 700);
});

最佳答案

问题是您的jQuery选择器是字符串$("#divy a:lt(count)")。您需要做的就是根据count的内容更改该字符串。将其更改为$("#divy a:lt("+count+")")应该可以为您解决。这样,如果count为5,则选择器为$("#divy a:lt(5)")

关于javascript - 在jQuery选择器中引用变量的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24816646/

10-12 04:12