2012-09-06 67 views
1

我一直必须使用选择器来获取DOM中的元素,以便能够检索我需要的数据。例如:选择没有选择器的元素,仅使用元素ID

var test1 = document.getElementById('testElement').value; // or 
var test2 = document.querySelector('#testElement').value; // or 
var test3 = $('#testElement').val(); // etc... 

最近,我注意到我不再需要那样做。相反,简单地使用元素的id似乎就足够了。它似乎被用作元素的参考。下面的代码适用于Chrome,Firefox甚至IE9。

var test4 = testElement.value; 

我一直试图找到一些这方面的详细信息,但无论我看,大家都说选择需要使用。
所以无论是我的同事还是我完全错过了这一点,或者没有多少人知道这件事。或者,我想,我很难搜索信息。

基本上,我正在寻找更多的信息。

所以请给我指出正确的方向,以便我可以进一步调查,并确保此功能在这里保持并可以一致地使用。

+0

@canon虽然我绝对讨厌重复,但我创建了另一个。道歉,下次我会进一步研究。感谢您的链接。它很好地解释了这种情况。 – 17xande

回答

1

根据规范,这是一个浏览器功能,它是而不是。这意味着为了让你的代码在大多数浏览器上工作,它应该使用一些选择器。另外,如果它已经是全局变量,则testElement可能无法正常工作。

0

取决于浏览器,全局范围内的元素ID 可能是。这是一个很好的功能,除了我不会依赖于你的应用程序。如果你想彻底,我建议使用getElementById()或使用jQuery的选择器。