2014-10-30 144 views
0

我有一个问题与JS(我使用jQuery的cookie)。 我想在几秒钟后显示一个div。而当它应该在firbug显示我得到一个错误,指出:JavaScript和Cookies

ReferenceError: showIt is not defined 
setTimeout('showIt()', 60000); // after 8 min 

这是我cookie.js coode

$(function() { 
    function showIt() { 
     $('#buy').show(); 
    } 

    //cookie 
    if ($.cookie('sls') == 'true') {  
     showIt(); 
    } else { 
     setTimeout('showIt()', 60000); // after 8 min 
    } 

    $.cookie('sls', 'true'); 
    }); 

感谢您的支持

回答

2

更改为:

setTimeout(showIt, 60000); 

当您给setTimeout指定字符串参数时,将评估Javascript全球范围。但是你的函数在本地定义为匿名函数,所以它不在全局范围内。传递函数本身而不是字符串,它将在本地范围内进行评估。

+0

谢谢!有用! – 2014-10-30 07:55:20