我在页面上有 iframe,iframe 和父页面在不同的域中,父页面上的 javascript 代码可以访问此 iframe 内的元素吗?
javascript 可以从父页面访问 iframe 元素吗?
IT技术
javascript
jquery
html
2021-02-28 21:33:54
6个回答
如果页面来自不同的域,它应该无法访问,浏览器的安全沙箱应该阻止这种类型的访问。当两个页面来自同一域的不同子域时,它可能会起作用,但在浏览器之间(甚至可能是同一浏览器的版本)之间可能并且会有所不同。
访问子 iframe 可能会起作用,但反过来肯定不会起作用。
最简单的方法是通过窗口上的框架对象,如下所示:
window.frames[0].document.getElementById('ElementId').style.backgroundColor="#000";
如果这两个域是完全分开的,那是不可能的
使用 jQuery.postMessage 插件http://benalman.com/code/projects/jquery-postmessage/docs/files/jquery-ba-postmessage-js.html
已测试浏览器 Internet Explorer 6-8、Firefox 3、Safari 3-4、Chrome、Opera 9。
可以通过 Chrome 使用 --disable-web-security 参数来完成...;)
其它你可能感兴趣的问题