Div关闭并打开jQuery的延迟功能

时间:2013-07-15 07:51:20

标签: javascript jquery

我正在创建一个广告框,如此处显示http://jsfiddle.net/TFeXY/1/

当用户点击“显示广告”按钮时,“addBox”会打开,他可以点击“关闭”按钮关闭“addBox”div。这一切都正常。

但是当用户在10秒之前(例如3秒后)点击“addbox”的关闭按钮,然后点击“显示广告”按钮时,“addBox”不会立即打开。如何让'addBox'立即可见。

这里是html部分,

<div id ="addBox" style ="display:none; height:200px; width:200p x; background:red">
    advertisment popup
    <a id ="Close" syle="float:right;">Close</a>
</div>

<a id="ShowAds">Show Ads</a>

和jQuery部分:

$('#ShowAds').click(function(){
$('#addBox').show(100).delay(10000).hide(100);
})

$('#Close').click(function(){
$('#addBox').hide();
})

2 个答案:

答案 0 :(得分:3)

使用stop() ..

 $('#clickme').click(function () {
   $('#addBox').show(100).delay(6000).hide(100);
 })

$('#Close').click(function () {
    $('#addBox').stop().hide();
})

但是......我也看一下原生setTimeout function。你可以使用

清除
clearTimeout();

fiddle here

答案 1 :(得分:1)

您可以在.stop上使用#clickme

<强> Demo here

$('#addBox').stop().show(100).delay(6000).hide(100);