JavaScript:从Array更改iFrame src

时间:2012-02-14 06:47:16

标签: javascript iframe

假设我在页面上有一个包含iFrame的3个网址数组。

如何每5秒运行这3个网址,然后重新开始? 理想情况下,页面将保持不变,只需更改iFrame src即可。

3 个答案:

答案 0 :(得分:2)

这样的事情应该有效:

setInterval(function(){
    var u = 0;
    document.getElementById('myiFrame').setAttribute('src',myUrlArray[u]);
    if(u < myUrlArray.length-1){
        ++u;
    }else{
        u = 0;
    }
},5000);

答案 1 :(得分:0)

假设你有这个:

<iframe id="ifr" src="">Your browser does not support iframes</iframe>

您只需要在Javascript中执行此操作:

var URLs = ["url1", "url2", "url3"];
var currURL = 0;

function cycle() {
    currURL = (currURL + 1) % 3;
    document.getElementById("ifr").src = URLs[currURL];
    setTimeout(cycle, 5000);
}

cycle();

答案 2 :(得分:0)

正确标记答案中的代码不起作用,因为它总是太高。以下是完美适用于我的代码:

<html>
<body>

<iframe id="myiFrame" src="a.html" width="100%" height="100%"></iframe>

<script>
    var myUrlArray = [
        "a.html", 
        "b.html", 
        "c.html"
    ];
    var u = 1;

    setInterval(function(){
        document.getElementById('myiFrame').setAttribute('src',myUrlArray[u]);
        u++;
        if (u == myUrlArray.length) {u = 0;}
    },1000);
</script>

</body>
</html>