append 和 appendChild 是否被覆盖?
Is append and appendChild getting overwritten?
我正在使用 jspmBundleSFX
.
在我的一个目录中的一个 index.html
中,当我在控制台中键入 $("#sfsdfasfsdaf").append
时。
我得到 function(){return x(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=s(this,a);b.appendChild(a)}})}
Chrome 说它属于 main.js
这是捆绑和丑化的 js。
$("#sfsdfasfsdaf")
根本不存在,发生了什么?
对于存在的 ID 也会发生这种情况 $("#canvas").append
我得到相同的结果。
appendChild
然而 returns undefined
在另一个目录的另一个 index.html
中,一切正常。我不知道如何解决这个问题。 index.html
都包含 main.js
丑化文件。
编辑: 我用 document.getElementById('canvas');
替换了 $("#canvas");
现在工作正常。但是我仍然不知道为什么会出现这个问题。某些脚本是否覆盖或与 jQuery 冲突?
您正在创建一个 jQuery 对象。它可能是一个空的 jQuery 对象(如果元素不存在,或者更准确地说,如果没有元素匹配选择器)但它仍然是一个 jQuery 对象。
因此,它仍然具有所有 jQuery 方法,例如 .append
。如果你调用它,它不会做任何事情。
Vanilla JavaScript,但是,如果元素不存在,则给出 null
(例如,document.getElementById('herpaderp')
将是 null
),并且 null
没有元素应有的方法,例如 appendChild
.
我个人认为这总体上是一件好事 - 如果我说我想要一个元素但它不存在,很可能存在更大的问题并且应该抛出错误,但 jQuery 会继续一路顺风
$("#sfsdfasfsdaf") Does not even exist, what is hapenning
原因是 $(selector)
总是 return 一个 jQuery
对象,无论是否存在匹配元素。该对象将始终包含一个 属性 append
这是一个函数。没有 jQuery 方法 appendChild
这就是你看到未定义的原因。
除此之外,您根本不清楚您要做什么或遇到什么更高级别的问题
我正在使用 jspmBundleSFX
.
在我的一个目录中的一个 index.html
中,当我在控制台中键入 $("#sfsdfasfsdaf").append
时。
我得到 function(){return x(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=s(this,a);b.appendChild(a)}})}
Chrome 说它属于 main.js
这是捆绑和丑化的 js。
$("#sfsdfasfsdaf")
根本不存在,发生了什么?
对于存在的 ID 也会发生这种情况 $("#canvas").append
我得到相同的结果。
appendChild
然而 returns undefined
在另一个目录的另一个 index.html
中,一切正常。我不知道如何解决这个问题。 index.html
都包含 main.js
丑化文件。
编辑: 我用 document.getElementById('canvas');
替换了 $("#canvas");
现在工作正常。但是我仍然不知道为什么会出现这个问题。某些脚本是否覆盖或与 jQuery 冲突?
您正在创建一个 jQuery 对象。它可能是一个空的 jQuery 对象(如果元素不存在,或者更准确地说,如果没有元素匹配选择器)但它仍然是一个 jQuery 对象。
因此,它仍然具有所有 jQuery 方法,例如 .append
。如果你调用它,它不会做任何事情。
Vanilla JavaScript,但是,如果元素不存在,则给出 null
(例如,document.getElementById('herpaderp')
将是 null
),并且 null
没有元素应有的方法,例如 appendChild
.
我个人认为这总体上是一件好事 - 如果我说我想要一个元素但它不存在,很可能存在更大的问题并且应该抛出错误,但 jQuery 会继续一路顺风
$("#sfsdfasfsdaf") Does not even exist, what is hapenning
原因是 $(selector)
总是 return 一个 jQuery
对象,无论是否存在匹配元素。该对象将始终包含一个 属性 append
这是一个函数。没有 jQuery 方法 appendChild
这就是你看到未定义的原因。
除此之外,您根本不清楚您要做什么或遇到什么更高级别的问题