您现在的位置:龙卷风首页 ›› 网络编程 ›› 阅读文章

Javascript获取IFrame内容(兼容IE&FF)

修改iframe中页面的内容,限制为本站的页面。

注意:要修改iframe中页面的内容,iframe的页面必须是本站的,否则因为安全性问题,操作会不成功。(这个故事告诉我们,使用修改别人的网页,嵌入自己的网页这条路是走不通的。)

在网上找到在IE下操作IFrame内容的代码:

document.frames["MyIFrame"].document.getElementById("s").style.color="blue";


但是这在Firefox下无效。
所以,想到在Firefox下用FireBug来调试。经过调试发现在Firefox下可用以下代码来实现:

document.getElementById("MyIFrame").contentDocument.getElementById("s").style.color="blue";


详细代码如下:
TestIFrame.htm:
<html>
<head>
<script type="text/javascript">
function f(){
var doc;

if (document.all){//IE
doc = document.frames["MyIFrame"].document;
}else{//Firefox
doc = document.getElementById("MyIFrame").contentDocument;
}

doc.getElementById("s").style.color="blue";
}
</script>
</head>
<body onload="f()">

<iframe id = "MyIFrame" name = "MyIFrame" src = "MyIFrame.htm" width = "100" height="100">

</body>
</html>

 

MyIFrame.htm:
<h1 id = "s" style="color:red;" >内容<h1>
 

作者 不见不散 本文仅代表作者观点,与龙卷风资讯网立场无关。

我来说两句

内容/Content