2017-04-05 51 views
-1

當用戶在我的網站上處於非活動狀態時,使用此腳本自動刷新頁面。如果頁面內有YouTube視頻,則忽略頁面刷新

<script> 
var time = new Date().getTime(); 
$(document.body).bind("mousemove keypress", function(e) { 
    time = new Date().getTime(); 
}); 

function refresh() { 
    if(new Date().getTime() - time >= 60000) 
     window.location.reload(true); 
    else 
     setTimeout(refresh, 10000); 
} 

setTimeout(refresh, 10000); 
</script> 

我需要排除自動刷新,如果在我的網頁中有youtube視頻。 YouTube視頻總是在#播放器CSS ID內。

+0

,什麼是你遇到的問題? –

回答

0

通過在if語句中添加&& !$('#player').length,您可以檢查#player是否是一件事情,因此視頻就在那裏。所以它只會刷新,如果它不在那裏。

<script> 
var time = new Date().getTime(); 
$(document.body).bind("mousemove keypress", function(e) { 
    time = new Date().getTime(); 
}); 

function refresh() { 
    if(new Date().getTime() - time >= 60000 && !$('#player').length) 
     window.location.reload(true); 
    else 
     setTimeout(refresh, 10000); 
} 

setTimeout(refresh, 10000); 
</script> 
+0

謝謝,我使用它,但我的網站崩潰。也許這個規則會產生太多的請求.. –

0

您可以設置一個條件在javascript:

if (document.getElementById('player')) { 

    [... CODE HERE ...] 

} 
+0

我使用它,但我的WordPress網站崩潰。這個條件可能太多請求。 –