document.getElementById('id')1.上下文为document。
2.必须传参数,参数是string类型,是获取元素的id。
3.返回值只获取到一个元素,没有找到返回null。
2.通过name属性(getElementsByName)
document.getElementsByName('name')1.上下文为document。
2.必须传参数,参数是是获取元素的name属性。
3.返回值是一个类数组,没有找到返回空数组。
3.通过标签名(getElementsByTagName)
document.getElementsByTagName('span');
var oDiv = document.getElementById('divId');
oDiv.getElementsByTagName('span');1.上下文为document或一个元素,如果为元素那么这个元素必须存在。
2.参数是获取元素的标签名属性,不区分大小写。
3.返回值是一个类数组,没有找到返回空数组。
4.通过类名(getElementsByClassName)
该方法与通过标签名类似1.上下文可以是document,也可以是一个元素。
2.参数是元素的类名。
3.返回值是一个类数组,没有找到返回空数组。
5.获取html的方法(document.documentElement)
document.documentElement是专用于获取html标签。
6.获取body的方法(document.body)
document.body是专用于获取body这个标签。
7.通过选择器获取一个元素(querySelector)
document.querySelector('.animated')
1.上下文可以是document,也可以是一个元素。
2.参数是选择器,如:"div .className"。
3.返回值只获取到一个元素。
8.通过选择器获取一组元素(querySelectorAll)
document.querySelectorAll(".box");
方法同querySelector类似:
1.上下文可以是document,也可以是一个元素。
2.参数是选择器,如:"div .className"。
3.返回值是一个类数组。
注意:
当有多个class相同的元素时,使用querySelector()方法只能获取到第一个class为box的元素,而querySelectorAll()获取到了所有class为box的元素集合。
所有获取DOM对象的方法中,只有getElementById()和querySelector()这两个方法直接返回的DOM对象本身,可直接为其绑定事件。
getElementXXX类型的方法,除了通过Id获取元素,其他都返回一个集合,如果需要取到具体的DOM元素,需要加索引,如:document.getElementsByClassName(“box”)[0] =>获取class为box的所有元素中的第一个DOM元素。