gpt4 book ai didi

javascript - setTimeout 延迟不起作用 - 我做错了什么?

转载 作者:行者123 更新时间:2023-11-28 16:26:52 25 4
gpt4 key购买 nike

我已经为下拉菜单编写了一段代码,绑定(bind)到 .hover(),但不幸的是 setTimeout() 上的延迟并没有。似乎有效,一旦鼠标从 .button 移动,它就会将 #sub-nav 的显示属性设置为 none

Dreamweaver CS 5.5 评估语法是否正确:(。

这是我的代码:

function retract(){ $('#sub-nav').css('display', 'none'); }

$('#header-restrict > .button').hover( function() {

if($(this).html() == "Offers") {
$('#sub-nav').css('display', 'block');
$('#sub-nav').html('<a href="#">Add a New Offer</a> &nbsp;&nbsp;&nbsp; <a href="#">Edit an Offer</a> &nbsp;&nbsp;&nbsp; <a href="#">Get Offer Links</a>');
}

if($(this).html() == "Rotations") {
$('#sub-nav').css('display', 'block');
$('#sub-nav').html('<a href="#">Add a New Rotation</a> &nbsp;&nbsp;&nbsp; <a href="#">Edit a Rotation</a> &nbsp;&nbsp;&nbsp; <a href="#">Get Rotation Links</a>');
}
}, function() { setTimeout(retract(), 4000); });

如果有人可以评论/回答为什么延迟似乎不起作用,我们将不胜感激!

最佳答案

setTimeout(retract(), 4000)

应该是

setTimeout(retract, 4000)

前者立即执行retract,然后将其返回值(即undefined)传递给setTimeout。由于 undefined 不是一个函数,setTimeout 尝试将其转换为字符串并对其进行eval,但实际上……什么也没做。

后者表示“从现在起 4000 毫秒后运行函数retract。”

关于javascript - setTimeout 延迟不起作用 - 我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7701224/

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