我有一个iframe
,应该在30秒后自动重新加载,但它只适用于我的电脑浏览器,而不适用于手机。在我添加正则表达式来测试用户代理后,它仍然无法在移动设备上运行。
以下是移动代码:
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)
两个问题:
iframe
设置为display:none
,因此无法显示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>