除非有人在DIV内部点击,否则DIV会在15秒后自动消失

时间:2013-02-11 21:18:34

标签: jquery html

我的网站将加载如下:

<div class"overlay">
<div id="hideMsg">15 </div>
<div class="mainbox">
</div>
</div>

此时叠加层在15秒后消失,但如果有人在div主机箱内点击,我想阻止这种情况发生。 (例如,盒子div将不再消失。同时,我也希望倒数计时器消失,因为它将不再需要。

我使用的代码是:

让div消失

$(document).ready(function()  {
    setTimeout(function() {
        $(".overlay").fadeOut(1500);
    },15000);
        });
倒数计时器的

var sec = 15
var timer = setInterval(function() {
   $('#hideMsg span').text(sec--);
   if (sec == -1) {
  $('#hideMsg').fadeOut('fast');
  clearInterval(timer);
   } 
}, 1000);

我想我需要以某种方式停止这个功能,但不知道该怎么做。真的很有兴趣看看最好的方法是什么。

谢谢,

斯科特

1 个答案:

答案 0 :(得分:4)

尝试清除onclick的暂停mainbox

$(document).ready(function()  {
    var mTimer = setTimeout(function() {
        $(".overlay").fadeOut(1500);
    },15000);

    $('.mainbox').click (function () {
       clearTimeout(mTimer);
       $('#hideMsg').fadeOut(100);
    });
});