访问iframe里面的函数
代码如下 | 复制代码 |
document.getElementById('commentIframe').contentWindow.hasLogined(); |
commentIframe为iframe的id.
要在 window.onload里面执行,上面不知道大家看懂了没。
例1.访问iframe中的js函数
代码
代码如下 | 复制代码 |
(freeware)http://www.111cn.net/--><a href="#" onclick="window.frames['frame1'].MyNext()">aa</a> <iframe id="frame1" src="print.html" ></iframe> print.html 页面 <script language="javascript" type="text/javascript"> function MyNext() { alert(1); } </script> |
那么要如何页面中的元素或id呢
例3.用JS访问iframe中的元素
1.首先,如何访问iframe中的元素?见如下代码:
(1)1.htm源码:
代码如下 | 复制代码 |
<input type=button value="test" onclick="self.frames['a'].document.all.mybutton.disabled=true"> <iframe name='a' src="2.htm" id="iframe2"></iframe> (2)2.htm源码 <input type=button value="mybutton" id="mybutton"> <script language=javascript> function showInfo(){alert();} </script> |
------------------------------------------------
在1.htm中点击test按钮,可以使2.htm(iframe页面)中mybutton按钮失效.就这么简单,呵呵.如果要调用2.htm中的JS函数这样写:
self.frames['a'].funtionname(param)
在1.htm中调用2.htm中的JS函数:iframe2.showInfo();
2.我遇到的问题:做一个项目时按照上述方法却无法访问iframe中的元素!!代码就是拷贝过来改变量名得来的,怎么就是不行呢?
后来,发现一点本质的不同:我的iframe页用的不是站内的页面,是指向外站中的url的!
将外站页面存到本站内后,就可以了,呵呵!
也就是说对于iframe中的页,如果是外站的页面,本站是没有对它的控制权的,甚至页中元素也是无法读取访问的.
动态更改iframe的高度
代码如下 | 复制代码 |
function changeParent(){ if (frameid1 != "" && parent!=null ) parent.document.getElementById("frameid1").style.height=document.body.scrollHeight; } |
时间: 2024-10-29 21:48:11