读书人

document.getElementsByTagName平添JS

发布时间: 2013-01-08 14:02:13 作者: rapoo

document.getElementsByTagName添加JS调用后不成功
网站要用document.getElementsByTagName('iframe')[0].src="XXXX";把网页里唯一的一个IFRAME的SRC重新指向,本来是成功的,但后来因特殊需要,把在<body></body>下的几个JS文件调用换到了<head></head>下:

结果getElementsByTagName就失效了,有哪位大侠能帮看看该怎么解决?
[解决办法]
执行时iframe未加载(因为js在iframe前面)

把该句代码写成
window.onload = function(){
document.getElementsByTagName('iframe')[0].src="XXXX";
}
就行了
[解决办法]
浏览器加载以及执行顺序为从上到下。
可以指定iframe的onload事件
funciton changeSrc()
{
document.getElementsByTagName('iframe')[0].src="XXXX";
}

<iframe onload="changeSrc();"/>

或者在页面加载之后触发某种事件来执行。



[解决办法]
把它设置为window.onload事件,....
[解决办法]
这个肯定是你的js使用它的时候,它还没有加载。你要想办法在iframe加载之后再使用它。
建议方法:
1.把事件程序加到iframe的onload事件上
2.把事件程序加到window的onload上
3.在事件处理程序上设置延时处理,选取一个合适的时间再处理

[解决办法]
把要执行的js放到onload事件里面
[解决办法]
加载head的js时运行了
document.getElementsByTagName('iframe')[0].src="XXXX";
而iframe未加载到浏览器,所以会出错。
可以等页面加载完再运行就可以了


window.onload = function(){
document.getElementsByTagName('iframe')[0].src="XXXX";
}

读书人网 >JavaScript

热点推荐