主页
<frameset name="myFrame" cols="199,*" frameborder="no" border="1" framespacing="0">
<frame src="1" name="leftFrame" frameborder="1" noresize="noresize" id="leftFrame" scrolling="no">
<frame src="2" name="mainFrame" frameborder="1" noresize="noresize" id="midFrame" scrolling="no">
</frameset>
1
<body>
<span id="names"> html</span>
</body>
2
<body>
<a onclick="on()">测试</a>
<script>
function on(){
var namess = window.parent.leftFrame.document.getElementById("names").innerHTML="ok";
alert(namess);
}
</script>
</body>
点击测试时IE弹出OK
goolge浏览器无反映提示Cannot call method 'getElementById' of undefined
------解决方案--------------------------------------------------------
<span id="names" name="names">
然后var namess = window.parent.leftFrame.document.getElementByName"names".innerHTML="OK"
看看这样行么
------解决方案--------------------------------------------------------
多浏览器支持需要严格遵循W3C标准的,而且一些新的特性还有不一样。火狐自己的版本3.0和3.5就有些特性不一样,在IE下,getElementById可以,但是在火狐下就不行了,getElementByName在不知道什么的情况下也不好用,我通常都是getObject,getElementsByName尝试着用。看清楚是getElementsByName。有些控件的属性写的位置不一样,在火狐下也会有问题,比如checkbox控件,ID属性如果写在最后面,在火狐下是取不到的。
其他的问题也有不少。