假设我有一个网页(www.demo.com)并且该网页有一些js(javascript1.js,javascript2.js)文件。
现在我创建了另一个网页(称为“www.newwebage.com”)并在 iFrame 中加载 www.demo.com。
现在我想在我的newwebpage.com中的javascript1.js和javascript2.js中使用这些方法,这样就不必为newwebpage.com创建另一个js文件,我直接使用这些方法。
我尝试了“document.getElementById('yourIFrame').contentWindow.yourFunction();”但没有发现它有效。
最佳答案
实现这一点很难,因为您的两个网站并非来自同一来源。
“同源策略的本质可以表述为:只有当它们来自相同的协议(protocol)://域:端口,或者简单地说,来自相同的源时,窗 Eloquent 能在彼此的上下文中工作。”
http://javascript.info/tutorial/same-origin-security-policy
有一些解决方法,即 cross-window messaging ,但您需要控制这两个域。从本质上讲,您将与主动禁止这种行为的浏览器作斗争,因为它被认为是一个安全缺陷。
关于javascript - 创建iframe中的js对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26969764/