0

不久前,我为一个网站创建了一个书签,它在页面上勾选了多个复选框:

javascript:javascript:;$("input[name='unfollow[]']").attr({checked:true});

不幸的是,用户界面发生了变化,而不是复选框,而是需要单击的按钮。以下是其中一个按钮的 HTML 示例:

<button class="process mode-basic Unfollow" data-verb="unfollow">Unfollow</button>

最多可以有 100 个这样的按钮。如何创建一个可以单击所有这些按钮的书签?是否可以在每次点击之间建立延迟?

谢谢。

4

2 回答 2

1
$('button[data-verb="unfollow"]').on({
    click: function() {
        $('#result').append($(this).text() + ' was clicked<br/>');
    }
});

$('#unfollow-all').on({
    click: function() {
        $('button[data-verb="unfollow"]').each(function(index) {
            var el = $(this);
            setTimeout(function() {
                clickButton(el);
            }, 500 * index);
        });
    }
});

function clickButton(button) {
    button.click();
}

小提琴:http: //jsfiddle.net/6AJNc/1/

于 2013-09-11T09:10:49.583 回答
1

假设页面已加载 jQuery,您可以单击每个页面,但两者之间有延迟:

(function(){
    var unfollowButtons = $('button.Unfollow');
    var index = unfollowButtons.length-1;
    unfollow();

    function unfollow(){
        if(index >= 0){
            $(unfollowButtons[index--]).click();
            setTimeout(unfollow, 500);
        }
    }
})();
于 2013-09-11T09:15:44.803 回答