为什么这段 javascript 代码会跳转到 jQuery 代码中?附加子冲突?
我将在这段代码下面使用一些 jQuery(我可以将其重写为 jQuery)。 jQuery 已加载。但我不明白为什么,当我在调试器中单步执行这段代码时,调试器会跳转到指定行上的 jQuery,并且收到“UL.appendChild”不是函数的错误。
var Dialog = document.createElement('div').id='meta-dialog';
var Tabs = document.createElement('div').id = 'meta-tabs';
var UL = document.createElement('ul').id = 'meta-ul';
var li1 =document.createElement('li'); li1.id = 'term1-LI';
var li2 =document.createElement('li'); li2.id = 'term2-LI';
var li1a = document.createElement('a');
var li2a = document.createElement('a');
li1a.href='#meta-tab1'; li1a.innerHTML = 'term1';
li2a.href='#meta-tab2'; li2a.innerHTML = 'term2';
li1.appendChild(li1a);
li2.appendChild(li2a);
UL.appendChild(li1) ; // Firebug debugger jumps into jQuery here
UL.appendChild(li2);
这个问题对任何人来说都是显而易见的吗?这与 jQuery 冲突吗?
I will be using some jQuery below this chunk of code (which I may rewrite as jQuery). jQuery is loaded. But I don't understand why, when I step through this code in the debugger, the debugger jumps into jQuery on the line indicated, and I am get the error that "UL.appendChild" is not a function.
var Dialog = document.createElement('div').id='meta-dialog';
var Tabs = document.createElement('div').id = 'meta-tabs';
var UL = document.createElement('ul').id = 'meta-ul';
var li1 =document.createElement('li'); li1.id = 'term1-LI';
var li2 =document.createElement('li'); li2.id = 'term2-LI';
var li1a = document.createElement('a');
var li2a = document.createElement('a');
li1a.href='#meta-tab1'; li1a.innerHTML = 'term1';
li2a.href='#meta-tab2'; li2a.innerHTML = 'term2';
li1.appendChild(li1a);
li2.appendChild(li2a);
UL.appendChild(li1) ; // Firebug debugger jumps into jQuery here
UL.appendChild(li2);
Is the problem apparent to anyone? Is this a conflict with jQuery?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
对话框和选项卡也是如此。 (你的 li1 和 li2 没问题)
哦,只要你不使用任何以 $ 开头的东西,你就不会与 jQuery 冲突。
And the same goes for Dialog and Tabs. (your li1 and li2 are fine)
Oh, and as long as you're not using anything starting with $, you cannot conflict with jQuery.
您的
UL
不是 jQuery 元素对象,只是本机 JavaScript 元素。您需要使用 jQuery 的$(UL)
获取UL
才能使用 jQuery 特定方法。Your
UL
is not a jQuery element object, just a native JavaScript element. You will need to obtain theUL
with jQuery's$(UL)
in order to use jQuery specific methods.