我有一个简单的html页面。它有一个iframe到其他网站。我想更改iframe中的nesteed锚标记的颜色。可以通过javascript
访问Iframe的元素答案 0 :(得分:1)
如果其他网页位于其他网域,由于跨域安全性,将无法从主页面编辑iframe的HTML内容。
有解决方法,例如在网址中编写您要进行的更改。但这真的很脏。
如果它在同一个域中,我建议使用,例如:
$('div', $('iframe')[0].contentWindow.document)
获取iframe中的所有div元素
答案 1 :(得分:1)
我是通过使用以下代码
完成的 function loadFrame(){ 的document.getElementById( 'pcl_frame')contentWindow.document.getElementsByTagName( 'A')[0] = .style.color '蓝色'。 }答案 2 :(得分:0)
你需要JavaScript。它与在父页面中执行的操作相同,除非您必须在JavaScript命令前添加iframe的名称。
请记住,相同的原始政策适用,因此您只能对iframe来自您自己的服务器执行此操作。
frame1.$('mydiv').style.border='1px solid #000000'
或
frame1.$('mydiv').addClassName('withborder')
答案 3 :(得分:0)
您可以使用
获取iframe中元素的值 $('#iframeId').contents().find('#id-of-element-inside-iframe');
但价值观无法改变。
答案 4 :(得分:0)
只有一个简单的解决方案,只有当您拥有iframe中的内容时才会有效。
在您的父资源中添加:
<script type="text/javascript">
var innerDocument = null;
</script>
在iframe中添加:
<script type="text/javascript">
parent.innerDocument = document;
</script>
当加载iframe时,您现在可以使用innerDocument来定位iframe的文档。 这规避了跨域安全。