JavaScipt选取文档元素的方法(推荐)


Posted in Javascript onAugust 05, 2016

摘自JavaScript权威指南(jQuery根据样式选择器查找元素的终极方式是 先用getElementsByTagName(*)获取所有DOM元素,然后根据样式选择器对所有DOM元素进行筛选)

选取文档元素的方法:

1、通过ID选取元素(getElementById)

1)使用方法:document.getElementById("domId")
        其中,domId为要选取元素的id属性值

2)兼容性:低于IE8版本的IE浏览器对getElementById方法的实现是不区分元素ID号的大小写的,并且会返回匹配name属性的元素。

2、通过名称name选取元素(getElementsByName)

1)使用方法:document.getElementsByName("domName")
        其中,domName为要选取元素的name属性值

2)说明:

a. 返回值是一个nodeList集合(区别于Array)

b. 和ID属性不一样,name属性只在少数DOM元素中有效(form表单、表单元素、iframe、img)。这是因为name属性是为了方便提交表单数据而打造的。            

c. 为form、img、iframe、applet、embed、object元素设置name属性时,会自动在Document对象中创建以该name属性值命名的属性。所以可以通过document.domName引用相应的dom对象

3)兼容性:IE中ID属性值匹配的元素也会一起返回

3、通过标签名选取元素(getElementsByTagName)

1)使用方法:document.getElementsByTagName("tagName")

其中,element是有效的DOM元素(包括document)
                 tagName是DOM元素的标签名

如:var aInput = document.getElementsByTagName("input");

 var aName = aInput[0];

 var pwd = aInput[1];

  var cfm = aInput[2];

2)说明:a. 返回值是一个nodeList集合(区别于Array)

b. 该方法只能选取调用该方法的元素的后代元素。

c. tagName不区分大小写

d. 当tagName为*时,表示选取所有元素(需遵从b.规则)

e. HTMLDocument会定义一些快捷属性来访问标签节点。如:document的images、forms、links属性指向<img>、<form>、<a>标签元素集合,而document.body和document.head总是指向body和head标签(当未显示声明head标签时,浏览器也会创建document.head属性)

4、通过CSS类选取元素(getElementsByClassName)

1)使用方法:element.getElementsByClassName("classNames")

其中,element是有效的DOM元素(包括document)

classNames是CSS类名称的组合(多个类名之间用空格,可以是多个空格隔开),

如element.getElementsByClassName("class2 class1")将选取elements后代元素中同时应用了class1和class2样式的元素(样式名称不区分先后顺序)

2)说明:

a. 返回值是一个nodeList集合(区别于Array)  

b. 该方法只能选取调用该方法的元素的后代元素。

3)兼容性:IE8及其以下版本的浏览器未实现getElementsByClassName方法

5、通过CSS选择器选取元素

1)使用方法:document.querySelectorAll("selector")

其中,selector为合法的CSS选择器

2)说明:a. 返回值是一个nodeList集合(区别于Array)

3)兼容性:IE8及其以下版本的浏览器只支持CSS2标准的选择器语法

以上这篇JavaScipt选取文档元素的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 45种缓动效果 非常酷
Jun 28 Javascript
jquery ajax,ashx,json的用法总结
Feb 12 Javascript
浅析javascript的间隔调用和延时调用
Nov 12 Javascript
js获取iframe中的window对象的实现方法
May 20 Javascript
浅谈jquery之on()绑定事件和off()解除绑定事件
Oct 26 Javascript
原生JS实现几个常用DOM操作API实例
Jan 19 Javascript
AngularJS自定义指令实现面包屑功能完整实例
May 17 Javascript
JavaScript字符串_动力节点Java学院整理
Jun 27 Javascript
基于AngularJS实现表单验证功能
Jul 28 Javascript
Nginx 配置多站点vhost 的方法
Jan 07 Javascript
Vue使用mixin分发组件的可复用功能
Sep 01 Javascript
vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)
Feb 11 Javascript
JS监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法
Aug 05 #Javascript
jQuery实现定位滚动条位置
Aug 05 #Javascript
在微信、支付宝、百度钱包实现点击返回按钮关闭当前页面和窗口的方法
Aug 05 #Javascript
浅谈JavaScript中的this指针和引用知识
Aug 05 #Javascript
JavaScript中的this引用(推荐)
Aug 05 #Javascript
JS实现HTML表格排序功能
Aug 05 #Javascript
JavaScript如何实现跨域请求
Aug 05 #Javascript
You might like
PHP5.5和之前的版本empty函数的不同之处
2014/06/13 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
2017/08/04 PHP
jQuery UI Dialog控件中的表单无法正常提交的解决方法
2010/12/19 Javascript
关于eval 与new Function 到底该选哪个?
2013/04/17 Javascript
jquery 设置元素相对于另一个元素的top值(实例代码)
2013/11/06 Javascript
浅析js设置控件的readonly与enabled属性问题
2013/12/25 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
详解如何较好的使用js
2016/12/16 Javascript
BootStrap3中模态对话框的使用
2017/01/06 Javascript
很棒的一组js图片轮播特效
2017/01/12 Javascript
浅谈webpack4.x 入门(一篇足矣)
2018/09/05 Javascript
JS+php后台实现文件上传功能详解
2019/03/02 Javascript
JS实现贪吃蛇游戏
2019/11/15 Javascript
使用nodeJS中的fs模块对文件及目录进行读写,删除,追加,等操作详解
2020/02/06 NodeJs
[01:30:55]VG vs Mineski Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
[59:35]DOTA2-DPC中国联赛定级赛 Aster vs DLG BO3第一场 1月8日
2021/03/11 DOTA
浅谈scrapy 的基本命令介绍
2017/06/13 Python
python实现停车管理系统
2018/11/30 Python
python之cv2与图像的载入、显示和保存实例
2018/12/05 Python
python 扩展print打印文件路径和当前时间信息的实例代码
2019/10/11 Python
Python Tornado核心及相关原理详解
2020/06/24 Python
在vscode中启动conda虚拟环境的思路详解
2020/12/25 Python
pandas 数据类型转换的实现
2020/12/29 Python
canvas实现图片马赛克的示例代码
2018/03/26 HTML / CSS
HTML5的标签的代码的简单介绍 HTML5标签的简介
2012/05/28 HTML / CSS
The North Face北面美国官网:美国著名户外品牌
2018/09/15 全球购物
餐饮业创业计划书范文
2014/01/06 职场文书
项目合作计划书
2014/01/09 职场文书
《果园机器人》教学反思
2014/04/13 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
会计主管岗位职责
2015/04/02 职场文书
2015暑期社会实践调查报告
2015/07/14 职场文书
python b站视频下载的五种版本
2021/05/27 Python
Python访问Redis的详细操作
2021/06/26 Python
深入理解 Golang 的字符串
2022/05/04 Golang