2016-04-29 182 views
0

我的setTimeout和setInterval函數有一些問題。我需要做的是在應用程序啓動2秒後顯示廣告,然後每2分鐘顯示一次。 好,直到現在我設法做了第一個問題的一半(2秒後顯示),但我無法弄清楚如何延遲另一個2分鐘的超時,並在循環中執行它(可能與setInterval) 。 我試着在超時時間內添加另一個超時,但延遲了第一次執行。Javascript超時延遲

我會apreciate一些幫助。 這裏是我的代碼現在直到:

setTimeout(function() { 
     // this will create a banner on startup 
     AdMob.createBanner({ 
      adId: admobid.banner, 
      position: AdMob.AD_POSITION.BOTTOM_CENTER, 
      overlap: false, 
      offsetTopBar: false, 
      bgColor: 'black' 
     }); 

     // this will load a full screen ad on startup 
     AdMob.prepareInterstitial({ 
      adId: admobid.interstitial, 
      autoShow: true 
     }); 
    }, 2000); 
+0

您是否嘗試在設置的超時時間內添加設置的時間間隔? – Matt

回答

4

如果你想在2秒後調用相同的代碼,然後再每2分鐘,你可以是這樣做的:

function someAdCode() { 
    // put the code here that you want to repeat 
} 

// start it in 2 seconds 
setTimeout(function() { 
    someAdCode(); 
    // schedule it to repeat every 2 minutes 
    setInterval(someAdCode, 2 * 60 * 1000); 
}, 2000); 

這一次2秒延遲使用setTimeout()。然後,在該回調中,您將開始setInterval()以每2分鐘重複一次。

+0

真棒,謝謝!它運作良好,我只是測試它。 – smobx