2017-05-26 181 views
0

我有一個iframe這應該在30秒後自動重新加載,但它只適用於我的電腦瀏覽器,而不是移動。在我添加了一個正則表達式來測試用戶代理之後,它仍然不適用於移動設備。移動iFrame重定向和重新加載主頁問題

這裏是移動代碼:

var regex = /android|(iP(hone|ad))/i; 
if(regex.test(navigator.userAgent)){ 
    window.setInterval("reloadIFrame();", 30000); 
    function reloadIFrame() { 
     document.getElementById("test").src="http://example.com"; 
    } 
    if (true) { 
     top.getElementById("test").src; 
    } else { 
     document.getElementById("test").src; 
    } 
} 

,iframe代碼:

<iframe id="test" style="display:none;"></iframe> 

我希望它的工作它在移動。請幫我解決它。謝謝!

+0

這裏沒有人幫我先生......? –

+0

請幫我... –

回答

0

兩個問題:

  1. iframe設置爲display:none,所以它永遠不會是可見
  2. 你傳遞一個字符串給setInterval,但它需要一個函數引用。

試試這個:

var regex = /android|(iP(hone|ad))/i; 
if(regex.test(navigator.userAgent)){ 
    window.setInterval(reloadIFrame, 1000); 
    function reloadIFrame() { 
     document.getElementById("test").src="https://example.com"; 
    } 
    if (true) { 
     top.getElementById("test").src; 
    } else { 
     document.getElementById("test").src; 
    } 
} 
<iframe id="test"></iframe> 
+0

演示:https://jsfiddle.net/n9dxx899/ – Supuhstar