我有一个使用iframe的遗留应用程序。 它在父页面中有一个iframe,可以用其他页面动态替换。
JQuery加载在父级中。是否有某种类型的插件允许我访问从iframe页面加载到父节点中的jquery核心,而不包括jquery 多个子(iframe)页面中的(language =“JavaScript”src =“../javascript/jquery.js”)?
例如,iframe是静态的
<iframe name="mainWindow" src="includes/View.asp frameborder="0" />
我知道有更好的方法可以做到这一点,但我现在仍然坚持使用这种架构。 有什么建议吗?
答案 0 :(得分:9)
您可以尝试在iframe中运行此功能:
var $ = jQuery = window.parent.$;
假设父级和iframe位于同一个域中。
刚刚测试过,例如:http://jsfiddle.net/qA7yE/
(该示例使用不同的代码 - 子iframe调用父代的foo()
函数,但同样的原则适用)
另外,为了安全起见,您可能想要这样做:
var $ = window.parent.$, jQuery = window.parent.jQuery;
答案 1 :(得分:0)
无效,对象引用父代,而不是iframe。在iframe中尝试一个简单的$('body').css('background','red')
;它适用于父级而不是iframe。