如何减慢 jquery 点击函数的执行速度?
How do I slow down the execution of a jquery click function?
我在 Google Chrome 控制台中使用一个简单的 jquery 命令来管理我的站点。基本上,我每天都要批准一些新的请求,所以我使用:
$('.approve').click();
其中 'approve' 是需要点击的按钮的 class 名称。这节省了我几个小时。但是,这每次都会使我的浏览器崩溃,有时甚至无法正常工作,主要是因为它占用了我笔记本电脑上的资源。我一直在寻找一种方法来减慢函数的动作。我试过了...
$('.approve').click().delay(1000);
尝试在两次按钮点击之间减慢 1 秒。这似乎不起作用(它 运行 没有错误,但我不认为它减慢了点击速度。
有什么想法吗?
编辑:
有人指出这可能与另一个问题重复。不是的原因是另一个最佳答案侧重于使用 JS 来定义一个使用 setTimeout() 的函数,我正在寻找一种本机 jquery 方法来实现它。我知道 jquery 是用 JS 写的,但是因为我是在命令控制台中使用它,所以我没有多行代码的奢侈 space.
谁能告诉我为什么上面的功能不起作用?根据我的研究,似乎应该如此。
提前致谢。
您可以像这样在函数点击上添加延迟
$(".approve").click(function(){
setTimeout(function(){
// Do something
}, 1000);
});
如果你想执行一次你的函数,使用setTimeout()
$(".approve").click(function(){
setTimeout(function(){
}, 1000);
});
如果你想每秒执行一次,使用setInterval()
点击时你必须运行一个函数来执行setTimeout函数
$('.approve').click(function(){
setTimeout(function(){
// here some code u want to execute after 5 sec //
}, 5000);
});
每次点击之间等待 1 秒:
您需要遍历每个 .approve
按钮,然后触发每个按钮的点击事件,中间有一秒:(setTimeout
)
$('.approve').each(function(index) {
var $approve = $(this);
setTimeout(function() {
// Simulation click event
$approve.trigger('click');
// 0, 1, 2, 3, ... times 1000 to bring delay to miliseconds
}, index * 1000);
});
一个内胆(IE9+):
$(".approve").each(function(c){setTimeout(function(c){c.click()},1e3*c,$(this))});
一个班轮:
$(".approve").each(function(e){var i=$(this);setTimeout(function(){i.click()},1e3*e)});
我在 Google Chrome 控制台中使用一个简单的 jquery 命令来管理我的站点。基本上,我每天都要批准一些新的请求,所以我使用:
$('.approve').click();
其中 'approve' 是需要点击的按钮的 class 名称。这节省了我几个小时。但是,这每次都会使我的浏览器崩溃,有时甚至无法正常工作,主要是因为它占用了我笔记本电脑上的资源。我一直在寻找一种方法来减慢函数的动作。我试过了...
$('.approve').click().delay(1000);
尝试在两次按钮点击之间减慢 1 秒。这似乎不起作用(它 运行 没有错误,但我不认为它减慢了点击速度。
有什么想法吗?
编辑:
有人指出这可能与另一个问题重复。不是的原因是另一个最佳答案侧重于使用 JS 来定义一个使用 setTimeout() 的函数,我正在寻找一种本机 jquery 方法来实现它。我知道 jquery 是用 JS 写的,但是因为我是在命令控制台中使用它,所以我没有多行代码的奢侈 space.
谁能告诉我为什么上面的功能不起作用?根据我的研究,似乎应该如此。
提前致谢。
您可以像这样在函数点击上添加延迟
$(".approve").click(function(){
setTimeout(function(){
// Do something
}, 1000);
});
如果你想执行一次你的函数,使用setTimeout()
$(".approve").click(function(){
setTimeout(function(){
}, 1000);
});
如果你想每秒执行一次,使用setInterval()
点击时你必须运行一个函数来执行setTimeout函数
$('.approve').click(function(){
setTimeout(function(){
// here some code u want to execute after 5 sec //
}, 5000);
});
每次点击之间等待 1 秒:
您需要遍历每个 .approve
按钮,然后触发每个按钮的点击事件,中间有一秒:(setTimeout
)
$('.approve').each(function(index) {
var $approve = $(this);
setTimeout(function() {
// Simulation click event
$approve.trigger('click');
// 0, 1, 2, 3, ... times 1000 to bring delay to miliseconds
}, index * 1000);
});
一个内胆(IE9+):
$(".approve").each(function(c){setTimeout(function(c){c.click()},1e3*c,$(this))});
一个班轮:
$(".approve").each(function(e){var i=$(this);setTimeout(function(){i.click()},1e3*e)});