我不明白下面的代码片段,它在 chrome 中完美运行(尚未在 ff 中测试)但它在 IE 中出现错误,指出“无效参数”,有什么办法可以解决这个问题吗?
window.parent.$('#tdDealItem').append($wrap);
我不明白下面的代码片段,它在 chrome 中完美运行(尚未在 ff 中测试)但它在 IE 中出现错误,指出“无效参数”,有什么办法可以解决这个问题吗?
window.parent.$('#tdDealItem').append($wrap);
您是否尝试过取出“窗口”部分并仅使用parent.$('#tdDealItem').append($wrap);
试试这个,
$(w.document.body).$('#tdDealItem').append($wrap);
Silverlight 的 WebBrowser 控件形式的 IE-embedded-in-Silverlight 也有同样的问题。
修复有点奇怪,我不确定我理解为什么,但是,将我的解决方案应用到您的解决方案中,这只是parent.jQuery
放入它自己的变量的情况,即:
var parentjq = parent.jQuery;
parentjq("#tdDealItem").append($wrap);
出于某种原因,IE-in-SL 不喜欢语法parent.jQuery(...).
,给我“对象不支持方法 'jQuery' 的这个属性”。
值得注意的是,这只发生在 IE-in-SL 中:在 IE7 浏览器模式下运行 IE7 strict 的 IE 没有出现同样的问题。但是YMMV。
为了好奇(和完整性),我遇到了问题/错误消息:
var fldid = parent.$("body").data("dateFieldId");
但拆分后:
var parentjq = parent.jQuery;
var fldid = parentjq("body").data("dateFieldId");
错误消失了,我得到了正确的结果。