如何将父iframe中的Jquery对象注入嵌入式iframe?

时间:2012-05-02 02:02:38

标签: javascript jquery

我在网页中嵌入了一个iframe,我想在这个框架中注入jquery。

我尝试过类似的事情:

frame.contentWindow.$ = window.$

虽然这有效,但iframe的$仍然在父级的范围内运行而不是自己的独立副本。

有没有办法在iframe中注入一个独立的jquery对象而不在框架中注入<script src="/path/to/jquery.js"></script>

更新

解决了它。 jquery.js通过接受匿名函数中的window对象,方便地为作用域定义jQuery:

function(windowObject){ .... define jquery }(window)

所以我所要做的就是命名这个功能,例如。 j为父窗口对象调用一次并调用它,然后为子窗口对象调用它。

jQuerify = function(windowObject){ .... define jquery }
jQuerify(window)
jQuerify(iframe.contentWindow)

2 个答案:

答案 0 :(得分:0)

您可以尝试克隆jQuery对象:

关于如何实现.clone函数的

See this answerthis one,请调用:

iframe.contentWindow.$ = window.$.clone();

iframe.contentWindow.$ = window.$.bind({});

...取决于您选择如何克隆该功能。

答案 1 :(得分:0)

解决了它。 jquery.js通过接受匿名函数中的window对象,方便地为作用域定义jQuery:

function(windowObject){.... define jquery}(window) 所以我所要做的就是命名这个功能,例如。 j为父窗口对象调用一次并调用它,然后为子窗口对象调用它。

jQuerify = function(windowObject){ .... define jquery }
jQuerify(window)
jQuerify(iframe.contentWindow)