2014-10-30 75 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