我正在使用jQuery为网站添加一些动态内容。
我尝试使用以下代码按需创建新的DOM元素:
container = $('<div id="myContainer"></div>');
这在Firefox和Safari中完美运行,但是Internet Explorer会生成一个错误。IE的错误是:“对象不支持此属性或方法”。
我知道jQuery已经正确加载,并尝试了
jQuery
和$
语法。有什么想法是什么可能导致这种情况?
我正在使用jQuery为网站添加一些动态内容。
我尝试使用以下代码按需创建新的DOM元素:
container = $('<div id="myContainer"></div>');
jQuery
和$
语法。我不知道它是否有帮助,但我解决了我的问题。基本上,IE不想将jquery对象分配给未定义的变量。
所以我把它声明为局部变量。
之前:
function foo() {
bar = $('#bar');
}
之后:
function foo() {
var bar = $('#bar');
}
如果你想要添加一个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');
我有一个类似的问题。当你尝试修改全局符号时,Internet Explorer会抛出这个错误。这不仅适用于保留字。我的例子是:
function foo() {
iframe = $("myDiv").append("<iframe></iframe>");
}
function foo() {
var iframe = $("myDiv").append("<iframe></iframe>");
}
同样地:
function foo() {
myIframe = $("myDiv").append("<iframe></iframe>");
}
(但第一种方式更好)