Javascript 多次更改iframe源

Javascript 多次更改iframe源,javascript,iframe,src,Javascript,Iframe,Src,我制作了一个iFrame,并希望在加载时将其源更改为10个不同源中的下一个: 它看起来是这样的: iframe loaded=>更改为example.com=>iframe loaded=>更改为example1.com=>iframe loaded=>更改为example2.com 有没有办法做到这一点。。。 我已经尝试了很多东西,并坚持这样做:(当然根本不起作用) 函数srca(src,load){ document.getElementsByTagName('iframe')[0].sr

我制作了一个iFrame,并希望在加载时将其源更改为10个不同源中的下一个:

它看起来是这样的:

iframe loaded=>更改为example.com=>iframe loaded=>更改为example1.com=>iframe loaded=>更改为example2.com

有没有办法做到这一点。。。 我已经尝试了很多东西,并坚持这样做:(当然根本不起作用)


函数srca(src,load){
document.getElementsByTagName('iframe')[0].src=src
警报(document.getElementsByTagName('iframe')[0].src)
document.getElementsByTagName('iframe')[0]。onload=load
}
函数a(){
srca('http://js.do","b")
}

谢谢大家!

我这样解决了这个问题:

javascript部分如下所示:

urls = ['http://www.example.com', 'http://www.com', 'http://js.do'];
position = 0;
element = document.getElementsByTagName('iframe')[0];
element.onload = frameLoaded;
next();  /* i.e. load the first */

function next() {
    if (urls.length > position) {
        element.src = urls[position];
        position += 1;
    }
}

function frameLoaded() {
    setTimeout(next, 4000);
}
我得到的问题是:

  • 难读:-P
  • 如果要传递命名函数,请使用其名称,而不是其字符串,例如:
    • blabla.onload=a
    • blabla.onload='a'
      错误
  • 在脚本之前触发的
    onload
    事件,即您调用的函数尚未定义
    • 这是一个共同的问题
    • 我将脚本部分放在
    • 我的解决方案的代码应该由
      body.onload
      执行(JSFIDLE就是这样做的)

什么也不改变..=我的整个想法都不好,我写了。
urls = ['http://www.example.com', 'http://www.com', 'http://js.do'];
position = 0;
element = document.getElementsByTagName('iframe')[0];
element.onload = frameLoaded;
next();  /* i.e. load the first */

function next() {
    if (urls.length > position) {
        element.src = urls[position];
        position += 1;
    }
}

function frameLoaded() {
    setTimeout(next, 4000);
}