Javascript 向JS函数添加延迟
我有这个功能:Javascript 向JS函数添加延迟,javascript,jquery,delay,settimeout,Javascript,Jquery,Delay,Settimeout,我有这个功能: $(document.body).ready(function() { var o = $(".hidden"); $(".about_us").click(function() { o.hasClass("visible") ? o.removeClass("visible") : o.addClass("visible"); }); }); 我想增加一个延迟。我在试这个 setTimeout(...); 像这样 $(document.body).re
$(document.body).ready(function() {
var o = $(".hidden");
$(".about_us").click(function() {
o.hasClass("visible") ? o.removeClass("visible") : o.addClass("visible");
});
});
我想增加一个延迟。我在试这个
setTimeout(...);
像这样
$(document.body).ready(function() {
setTimeout(function() {
var o = $(".hidden");
$(".about_us").click(function() {
o.hasClass("visible") ? o.removeClass("visible") : o.addClass("visible");
});
}, 1000);
});
但它不起作用。
有什么帮助吗
以上是正确的语法,但尚未测试。。。这将100%起作用。看起来您试图在添加单击侦听器之前添加超时1秒,但正如@Moob所说,这没有意义 如果希望在单击后发生延迟,此代码将起作用:
$(document).ready(function() {
$(".about_us").click(function() {
setTimeout(function() {
var o = $(".hidden");
o.hasClass("visible") ? o.removeClass("visible") : o.addClass("visible");
}, 1000);
});
});
你想在哪里耽搁?在添加click侦听器之前,您似乎需要等待1秒,但这没有意义。也许您希望延迟发生在单击之后?请澄清。
$(document).ready(function() {
$(".about_us").click(function() {
setTimeout(function() {
var o = $(".hidden");
o.hasClass("visible") ? o.removeClass("visible") : o.addClass("visible");
}, 1000);
});
});