2017-05-26 56 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