我正在撰写一篇关于SenchaTouch的文章,并希望将基本的Ext.Get与JQuery中的Equivalent进行比较。我有点困惑,想确保我做对了。
在SenchaTouch中,要设置innerHtml,我使用Ext.get并将其传递给我想要的元素。在JQuery中,我传递了一个css选择器? (我认为这就是#所做的)。我对吗?在JQuery中,有没有办法做同样的“GetElementById”类型的事情?
另外,我对JQuery没有返回数组的原因感到有点困惑?那是因为在DOM中只能有一个标有相同ID的项目吗?
我知道,有点新手的问题,但我真的想确保我正确地理解这一点。
Ext.application({
name: 'MyApp',
launch: function () {
Ext.get('div1').setHtml('Ext Set this');
}
});
$(document).ready(function () {
$('#div2').html('JQuery Set this');
});
答案 0 :(得分:1)
document.getElementById()
返回一个DOM元素,它是原生JavaScript,比Ext.get()
或$(#id)
$('#id')
这是一种jQuery选择器不会返回一个数组,它返回一个jQuery object,它允许你调用任何应该影响找到的元素的jQuery方法。即使jQuery对象不包含任何元素,它也永远不会返回null,它将被视为空对象而不执行任何操作。
所以基本上,Ext.get()与javascript中的document.getElementById()
或jQuery中的$('#id')
不完全相同,因为它不仅仅允许id
而是现有的HTMLElement,或者Ext.Element
。