最近一直搞不懂,为何项目中有的用document.getElementById 有的用documemt.all。于是上网找了一下。发现是这样回答的。
document.all是IE下面的document属下的所有元素的集合,可以通过document.all.length来看到document下面的元素数量.
document.all(index)后面的index参数是一个集合方法.
如果index是string那么可以获得document下面具有id或name为index的元素集合.如果没有就返回null.
这样并不好,当你不知道有多少个id或name是index的元素是,就比较容易出错.
如果index是数字的话,那么会返回以0为基础的,文档中第index个元素.
元素的文档序列可以通过Element.sourceIndex来获取
document.getElementById(name)只返回第一个具有id或name为name的元素,所以不是null就是一个元增强活力,而不会返回集合.这样就大大减少了错误发生的可能性.
如果需要返回一个id或name为name的元素集合的话,就要用document.getElementsByName(name)来获取.
另外document.all只有IE支持,其它浏览器并不支持.
而document.getElementById和document.getElementsByName是任何浏览器都支持的
分享到:
相关推荐
本文主要讨论的是`document.getElementById`这个常用方法在不同浏览器之间的实现区别,以及如何处理这些差异。 `document.getElementById`是一个JavaScript内置方法,用于根据指定的ID从文档中获取元素。在大部分...
document.getElementById()对象和使用方法
这段代码展示了如何使用 `document.all` 和 `getElementById` 修改元素的 `display` 属性。其中 `document.all` 方法仅在IE中有效。 ##### 示例3:全选功能实现 ```javascript function allselect() { var form = ...
总的来说,本篇内容针对在Vue中使用`document.getElementById()`时遇到的问题提供了深入的分析和具体的解决方案,帮助开发者更好地理解Vue的工作原理以及如何在Vue项目中合理使用原生JavaScript DOM操作方法。...
document.all是IE 4.0及以上版本的专有属性,是一个表示当前文档的所有对象的娄组,不仅包括页面上可见的实体对象,还包括一些不可见的对象,比如html注释等等。在document.all数组里面,元素不分层次,是按照其在...
`TypeError: document.getElementById(...) is null` 是一个常见的JavaScript错误,通常出现在尝试访问一个尚未加载或者不存在于DOM(文档对象模型)中的元素时。这个错误表示`document.getElementById`方法未能找到...
在上述问题中,主要讨论了如何正确地使用 `document.getElementById` 方法来获取页面中的元素对象,特别是在页面加载过程中的时机问题。 首先,`document.getElementById` 是JavaScript中的一个函数,它用于根据...
document.getElementById(id) : id; ``` 这是一个三元运算符的示例,也称为条件运算符。它的语法是 `condition ? expr1 : expr2`,如果 `condition` 为真(true),则表达式的结果为 `expr1`,否则为 `expr2`。 在...
document.getElementById为null 原因: var titab=document.getElementById(“titletab”);没有取到对象 解决办法: 1.在错误语句的下面加上alert(titab);调试语句,看看是否有消息框弹出 2.如果没有弹出,检查...
了解这些基本的JavaScript执行机制和DOM加载流程,能帮助开发者避免`TypeError: document.getElementById(...) is null`这类常见的错误,提高代码的健壮性和用户体验。记住,良好的编程习惯和对文档结构的理解是解决...
① document.getElementById 有时会抓name放过了id ,据说是IE的一个BUG; http://community.csdn.net/Expert/topic/4223/4223888.xml?temp=.1947443 页面中有 程序代码 <input type=”hidden” id=”hello8...
^) 但是对于document.getElementsByName 与document.getElementById 这个两个方法,IE中是并没有严格区分 ID 与 Name 的,比如: [removed] function useGetElementsByNameWithId(id) { var eles = d
其中`document.getElementsByName()`与`document.getElementById()`是常用的两种方法,它们分别通过元素的`name`属性和`id`属性来选取元素。本文将详细介绍这两种方法的用法,并进行深入比较。 #### 一、document....
代码如下:function $(id){return document.getElementById(id); 上面的对于新版本的浏览器都是没有问题的,如果使用古老的浏览器,可以使用下面的函数 ... } else if (document.all && document.all(objectId)) { //
在现代Web开发中,更推荐使用`document.getElementById()`, `document.getElementsByClassName()`, `document.getElementsByTagName()`或`document.querySelector()`等标准方法,这些方法在所有现代浏览器中都有良好...
onload = function ( ) { formNode = document . getElementById ( 'form' ) ; submitButtonNode = document . getElementById ( 'submit' ) ; nameInputNode = document . getElementById ( 'name' ) ; ...
比如用_$(id)代替document.getElementById(id). 如果是纯粹的代替可以使用下面的代码 代码如下: function $(id){document.getElementById(id)} 个人比较推荐用prototype中对document.getElementById的定义: 代码如下...