Javascript getElementById和jquery$(';#smth';)之间的差异
经典Javascript代码之间的区别是什么:Javascript getElementById和jquery$(';#smth';)之间的差异,javascript,jquery,getelementbyid,Javascript,Jquery,Getelementbyid,经典Javascript代码之间的区别是什么: document.getElementById('theID') 以及jQuery版本: $('#theID') 在第二个项目中,可能没有在顶部包含jQuery文件。document.getElementById返回DOM对象。这是浏览器对页面中元素的固有思考方式。它有多种方法和特性。使用起来可能有点笨重 jQuery对象(由$方法创建)是围绕一个DOM元素或一组DOM元素的包装器。常规属性和方法不可用;您可以选择不同的方法,使DOM操作过程更
document.getElementById('theID')
以及jQuery版本:
$('#theID')
在第二个项目中,可能没有在顶部包含jQuery文件。
document.getElementById
返回DOM对象。这是浏览器对页面中元素的固有思考方式。它有多种方法和特性。使用起来可能有点笨重
jQuery对象(由$
方法创建)是围绕一个DOM元素或一组DOM元素的包装器。常规属性和方法不可用;您可以选择不同的方法,使DOM操作过程更加直观
通过选择中的多个元素可以更清楚地看到差异(正如使用类选择器$('.someClass')可以看到的那样)
例如,但是jQuery选择上的方法与原生DOM元素上的方法不同。它们指向相同的东西,但思考和处理它的方式不同
最后,您可以使用方法(edit:或类似数组的替代语法)将jQuery选择转换为其本机DOM元素 完全一样
$('#theID').get(0) // or $('#theId')[0]
但是请注意,您应该使用第一个,因为它有更好的性能。只有在需要jQuery提供的额外功能时才使用它。请确保包括
在您的
如果不加载jQuery
,则不能使用$
,因为jQuery是一个外部库,不是JavaScript的一部分。不完全是:
如果页面上不存在具有该id的元素
$(“#id”)将不起作用,脚本将停止
document.getElementById(“id”)将返回null我喜欢常规JS被称为“classic”。@Spanky我认为需要在“classic javascript”上启动一个新标记,因为所问的问题数量明确表示“no jQuery”或者他们甚至从未引用过jQuery,人们仍然只是发布jQuery代码片段,hahaWe要求查看错误:DWhy
.get(0)
,而不是[0]
?@Raynos explicity…我添加了替代符号。感谢您的帮助,这是我希望听到的答案:)如何使用getElementById创建由$返回的相同对象jQuery链接正确,错误很旧,但我使用的代码是document.getElementById('viewport')。更改getElement时的滚动条无效。。。
$('#theID').get(0) // or $('#theId')[0]