gpt4 book ai didi

javascript - JQuery .click() 处理程序无法接受函数周围的 setTimeout()

转载 作者:行者123 更新时间:2023-12-01 00:44:57 25 4
gpt4 key购买 nike

我想在执行函数之前在 .click(function() {...}) 处理程序中编写一个延迟。这不起作用:

$('.okButton').click(setTimeout(function() { ...}, 3000))

它给出了这个错误(在 Chrome 中):

Uncaught TypeError: Object 2 has no method 'apply'

JQuery 文档没有给出任何关于为什么这不起作用的线索。

如何在执行函数处理程序之前延迟?

最佳答案

它不起作用,因为 setTimeout() 不返回函数;它返回一个计时器句柄(一个数字)。

这应该有效:

$('.okButton').click(function() { setTimeout(function() { ...}, 3000); });

JavaScript 函数调用中的参数表达式始终在调用函数之前完全计算。您的代码调用了 setTimeout(),并且该代码的返回值被传递到 jQuery 例程中。

关于javascript - JQuery .click() 处理程序无法接受函数周围的 setTimeout(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18968585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com