用JS访问iframe中的元素

用JS访问iframe中的元素

1.首先,如何访问iframe中的元素?见如下代码:
(1)1.htm源码:
<input  type=button value="test"  οnclick="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;                
            }

 

 

 

 

摘自:http://chinadudu.spaces.live.com/Blog/cns!65B8F8286593DB82!2911.entry

 

 

 

  

 

 

 

 用JS访问iframe中的元素时遇到的问题


 

 1.首先,如何访问iframe中的元素?见如下代码:
(1)1.htm源码:
<input  type=button value="test"  οnclick="self.frames['a'].document.all.mybutton.disabled=true">  
<iframe  name='a'  src="2.htm"></iframe>  

(2)2.htm源码
<input  type=button  value="mybutton"  id="mybutton">
------------------------------------------------
在1.htm中点击test按钮,可以使2.htm(iframe页面)中mybutton按钮失效.就这么简单,呵呵.如果要调用2.htm中的JS函数这样写:
self.frames['a'].funtionname(param)
即可.

2.我遇到的问题:做一个项目时按照上述方法却无法访问iframe中的元素!!代码就是拷贝过来改变量名得来的,怎么就是不行呢?
后来,发现一点本质的不同:我的iframe页用的不是站内的页面,是指向外站中的url的!
将外站页面存到本站内后,就可以了,呵呵!
也就是说对于iframe中的页,如果是外站的页面,本站是没有对它的控制权的,甚至页中元素也是无法读取访问的.
所谓站内站外可能是与站点域名有关系的吧,懒得试了,有兴趣的朋友不仿试试.

 

 

 

摘自:http://www.cnblogs.com/bluesky521/archive/2008/06/01/1211492.html

 

转载于:https://www.cnblogs.com/elleniou/archive/2013/05/14/3077724.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值