如何在iframe中的 document 空间获得,该iframe的属性,内详!

Dickensi 2003-03-06 01:16:21
parent.htm
-----------------------------------
<html>
<body>
<table>
<tr><td>
<iframe frameborder=1 src='child.htm'></iframe>
</td></tr>

<tr><td>
<iframe frameborder=2 src='child.htm'></iframe>
</td></tr>
</table>
</body>
<html>

------------------------------------------------------------------------
child.htm
<html>
<script>
function onLoadPage(){
var iFrameBorder = ?????;
var alert(iFrameBorder);
}
</script>
<body onload='onLoadPage()'>
</body>
</html>


我在child.htm中如何获的容纳该document的iframe属性,比如frameborder?
...全文
240 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
零度空间0520 2010-06-18
  • 打赏
  • 举报
回复
学习一下,,
jenemery 2003-03-10
  • 打赏
  • 举报
回复
gz
Dickensi 2003-03-07
  • 打赏
  • 举报
回复
(续上)

所以指定iframe的name或者id是不可能的!

期待高手答案!
Dickensi 2003-03-07
  • 打赏
  • 举报
回复
同一个页面可以在多个不同的iframe中,

也就是说iframe 跟 child.htm实际上是多对多的关系。
crossdavi 2003-03-07
  • 打赏
  • 举报
回复
你的iframe是用代码生成的?那你生成的时候,自己加一个name=xxx不就可以乐么.
要不你把你生成frame的代码贴来看看
Dickensi 2003-03-07
  • 打赏
  • 举报
回复
多谢!

walkingpoison(walkingpoison) 的方法不错,给了我不少启示!
walkingpoison 2003-03-07
  • 打赏
  • 举报
回复
给你提供了3种方法,第1种方法需要ie6.0以上,第2种方法需要给iframe加上name,第3种方法只需要ie5以上就可以了。

<html>
<script>
function getiframe(){ //IE 6.0+
if(parent){
var f=parent.document.getElementsByTagName("IFRAME");
for(var i=0;i<f.length;i++)if(f[i].contentWindow==self)return f[i];
}
}
function getiframe2(){ //IE 5.0+ by using name property
if(parent){
var f=parent.document.getElementsByTagName("IFRAME");
for(var i=0;i<f.length;i++)if(parent.frames(f[i].name)==self)return f[i];
}
}
function getiframe3(){ //IE 5.0+ without name property
if(parent){
var f=parent.document.getElementsByTagName("IFRAME");
for(var i=0;i<f.length;i++)if(parent.frames(i)==self)return f[i];
}
}
</script>
<body>
<input type=button value=getiframe onclick="alert(getiframe().frameBorder)">
<input type=button value=getiframe2 onclick="alert(getiframe2().frameBorder)">
<input type=button value=getiframe3 onclick="alert(getiframe3().frameBorder)">
</body>
</html>
Dickensi 2003-03-06
  • 打赏
  • 举报
回复
不行啊!

在当前的child.htm空间中我根本不晓得其container是哪一个,也就是说没法取得

parent.document.getElementById("frame2")中的frame2这各值!

frame跟child.htm均是动态的,不能hardcode

不晓得有没有其它办法?
fason 2003-03-06
  • 打赏
  • 举报
回复
ie5+以上可以使用
parent.document.getElementById("frame2").frameBorder
fason 2003-03-06
  • 打赏
  • 举报
回复
parent.document.all.iframeName.property


例如:parent.document.all.iframe1.frameBorder=0
meizz 2003-03-06
  • 打赏
  • 举报
回复
<html>
<body>
<table>
<tr><td>
<iframe name=iframe1 frameborder=1 src='child.htm'></iframe>
</td></tr>

<tr><td>
<iframe name=iframe2 frameborder=2 src='child.htm'></iframe>
</td></tr>
</table>
</body>
<html>

parent.document.all.iframe1.frameBorder
parent.document.all.iframe2.frameBorder

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧