window.parent。$()在IE中不起作用

时间:2013-03-01 09:47:20

标签: javascript jquery internet-explorer iframe browser

我不理解下面的代码片段,它在chrome中完美运行(尚未在ff中测试)但在IE中有错误说明“无效参数”,有什么方法可以解决这个问题吗?

window.parent.$('#tdDealItem').append($wrap);

3 个答案:

答案 0 :(得分:1)

您是否尝试取出“窗口”部分并使用parent.$('#tdDealItem').append($wrap);

答案 1 :(得分:0)

试试这个,

$(w.document.body).$('#tdDealItem').append($wrap);

答案 2 :(得分:0)

我以Silverlight的WebBrowser控件的形式在IE-embedded-in-Silverlight中遇到了同样的问题。

修复有点奇怪了,我不确定我理解为什么,但是,采取我的解决方案并将其应用到你的,它只是一个案例将parent.jQuery放入其自己的变量中,即:

var parentjq = parent.jQuery;
parentjq("#tdDealItem").append($wrap);

出于某种原因,IE-in-SL不喜欢语法parent.jQuery(...).,给我"对象不支持方法的这个属性' jQuery&# 39;"

值得注意的是,这只发生在IE-in-SL中:在IE7浏览器模式下运行的IE与IE7严格并没有表现出同样的问题。但是YMMV。

对于好奇(和完整性),我遇到了问题/错误消息:

var fldid = parent.$("body").data("dateFieldId");

但是在分裂成:

之后
var parentjq = parent.jQuery;
var fldid = parentjq("body").data("dateFieldId");

错误消失了,我得到了正确的结果。