我的页面上有几个按钮,并且我希望在一定的延迟下将焦点切换到每个按钮上。我如何用jquery或纯javascript实现。这就是我要遍历所有按钮的想法,但显然我最终将重点放在了最后一个按钮上。
$(document).ready(function() {
var allButtons = $(":button");
for (i=0;i<=allButtons.length;i++) {
$('.category_button')[i].focus()
}
});
最佳答案
您可以通过在for循环中创建一个闭包并将索引传递给setTimeout
延迟来实现:
var allButtons = $(":button");
for (i = 0; i < allButtons.length; i++) {
(function(index) {
setTimeout(function() {
allButtons[index].focus();
}, 1000*index);
}(i));
}
See example here.