文档介绍:JS跨域访问操作iframe
2013-06-08 16:25 608人阅读评论(1) 收藏举报
很多人一直都有个想法,要是可以随心所欲的操作iframe就好了。这样静态页面也就有了相当于后台动态页面
php,jsp,asp中include,require实现统一多页面布局的能力。
通过Javascript的帮忙我们可以像后台一样动态加载操作iframe对象属性src指向的html页面的内容。这样的操作需
要提供两个页面,一个页面是iframe所在页面(页面名称:),另一个页面是iframe属性src指向页面
(页面名称:)。
,<body>里dom:
1. <iframe id=“iId“ name=“iName“ src=““ scrolling=“no“ frameborde
r=“0“></iframe>
,<body>里dom:
1. <h1>妹妹的一天</h1> 
2. <p>早上吃早点,中午约会吃饭,下午K歌,晚上和哥哥瞎折腾</p>
下面讨论ie下JS是怎么操作以上两个页面,再讨论firefox的做法,最后给出兼容ie,firefox浏览器操作iframe对象
的方法。
一、ie下访问操作iframe里内容
 
大家都知道iframe是非标准html标签,它是由ie浏览器推出的多布局标签, 随后Mozilla也支持了这个标签。(闲
话,嘿嘿)
1. ["IframeName"]获取它,例子:
容,JS如下:
1. alert(["iName"].(‘h1‘)
[0].);
你会发现这样在页面里加入代码,好像并没有输出想要的东东,为什么呢?这个我也没有搞清楚,只是****惯性的加
(注:JS代码都写到这个事件里去),知道的人士可否告诉我下。why?更改之后代码
ie下有了输出,:
1.  = (function () { 
2.   alert(["iName"].(‘h1‘)
[0].);
3. });
2. ie另一种方法contentWindow获取它,代码:
1.  = (function () { 
2.  var iObj = (‘iId‘).contentWindow;
3.  alert((‘h1‘)[0].);
4. });
此方法经过ie6,ie7,firefox2