HTML元素在JavaScript中表示为全局变量,如何表示?
JavaScript是否将每个HTML元素表示为一个全局变量,该变量的名称是元素的id 假设我有一个隐藏的输入元素,如下所示:HTML元素在JavaScript中表示为全局变量,如何表示?,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,JavaScript是否将每个HTML元素表示为一个全局变量,该变量的名称是元素的id 假设我有一个隐藏的输入元素,如下所示: <input type="hidden" value="10" id="myInput" /> 我在chrome和firefox上试用过,它对我很有效 我的问题是: 这个问题在JavaScript中是新问题吗 按id获取元素是最佳做法吗 尽管使用全局变量不是最佳实践,但为什么它们实现此功能 称为命名访问。具有id的每个元素都将在全局范围内引用。这是窗口对
<input type="hidden" value="10" id="myInput" />
我在chrome和firefox上试用过,它对我很有效
我的问题是:
- 这个问题在JavaScript中是新问题吗
- 按id获取元素是最佳做法吗
- 尽管使用全局变量不是最佳实践,但为什么它们实现此功能
- 称为
命名访问
。具有id的每个元素都将在全局范围内引用。这是窗口对象
。尽管使用它不是一个好的实践,但它是用HTML5
标准化的
它的用法有一个简单的相互矛盾的例子:
如果您在全局范围内声明了一个变量,如隐藏
,并且在文档中有一个元素
,其id为隐藏
。然后该元素引用将被我们的全局变量
覆盖。此时,如果在任何事件处理程序或其他地方使用它(element
reference),将导致错误
console.log(myInput.value);