我使用jQuery添加一些动态内容的网站。
我试图用下面的代码来创建点播新的DOM元素:
container = $('<div id="myContainer"></div>');
这工作完全在Firefox和Safari浏览器,但Internet Explorer中生成错误。 IE的错误是: Object doesn't support this property or method
我知道,jQuery是正确加载,并已试用过jQuery
和$
语法。
任何想法,以什么可能导致此?
如果你想添加一个DOM元素,代码需要修改一下:
$('body').append('<div id="myContainer"></div>');
// body can be whatever containing element you want to hold myContainer
$('#myContainer').html('whatever you want inside of myContainer');
我不知道这是否可以帮助,但我固定我的问题。 基本上IE不希望jquery对象分配给未定义的变量。
所以我所做的就是这个声明一个局部变量来代替。
之前:
function foo() {
bar = $('#bar');
}
后:
function foo() {
var bar = $('#bar');
}
我有一个类似的问题。 当您尝试修改全局符号的Internet Explorer抛出这个错误。 这不仅是对保留字的情况。 我的例子是:
function foo() {
iframe = $("myDiv").append("<iframe></iframe>");
}
这解决了它:
function foo() {
var iframe = $("myDiv").append("<iframe></iframe>");
}
这个也是:
function foo() {
myIframe = $("myDiv").append("<iframe></iframe>");
}
(但首先是更好的风格反正)
文章来源: jQuery “Object doesn't support this property or method” in Internet Explorer