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语言中的Literal Syntax特性分析
Mar 08 Javascript
document.documentElement的一些使用技巧
Apr 18 Javascript
jquery将一个表单序列化为一个对象的方法
Dec 02 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
Apr 23 Javascript
JavaScript实现的encode64加密算法实例分析
Apr 15 Javascript
js实现无限级树形导航列表效果代码
Sep 23 Javascript
JavaScript tab选项卡插件实例代码
Feb 23 Javascript
解决一个微信号同时支持多个环境网页授权问题
Aug 07 Javascript
浅谈vue异步数据影响页面渲染
Oct 29 Javascript
微信小程序实现录制、试听、上传音频功能(带波形图)
Feb 27 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
Aug 03 Javascript
JavaScript中clientWidth,offsetWidth,scrollWidth的区别
Jan 25 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
利用static实现表格的颜色隔行显示
2006/10/09 PHP
php初学者写及时补给skype用户充话费的小程序
2008/11/02 PHP
windows下开发并编译PHP扩展的方法
2011/03/18 PHP
ci检测是ajax还是页面post提交数据的方法
2014/11/10 PHP
PHP实现的简单三角形、矩形周长面积计算器分享
2014/11/18 PHP
php输出金字塔的2种实现方法
2014/12/16 PHP
Javascript学习笔记-详解in运算符
2011/09/13 Javascript
JavaScript网页定位详解
2014/01/13 Javascript
jQuery实现气球弹出框式的侧边导航菜单效果
2015/09/22 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
2016/05/10 Javascript
详解vue.js2.0父组件点击触发子组件方法
2017/05/10 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
2017/10/26 Javascript
Javasript设计模式之链式调用详解
2018/04/26 Javascript
Vue-cli配置打包文件本地使用的教程图解
2018/08/02 Javascript
Python的Django框架中if标签的相关使用
2015/07/15 Python
python3+PyQt5图形项的自定义和交互 python3实现page Designer应用程序
2020/07/20 Python
python3 面向对象__类的内置属性与方法的实例代码
2018/11/09 Python
python环境下安装opencv库的方法
2020/03/05 Python
Java Spring项目国际化(i18n)详细方法与实例
2020/03/20 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
Python reduce函数作用及实例解析
2020/05/08 Python
Python二元算术运算常用方法解析
2020/09/15 Python
python爬取代理ip的示例
2020/12/18 Python
Python 生成短8位唯一id实战教程
2021/01/13 Python
python包的导入方式总结
2021/03/02 Python
GNC健安喜官方海外旗舰店:美国著名保健品牌
2017/01/04 全球购物
煤矿班组长岗位职责
2013/12/29 职场文书
十佳护士获奖感言
2014/02/18 职场文书
校园安全广播稿范文
2014/09/25 职场文书
个人自荐书怎么写
2015/03/26 职场文书
降价通知函
2015/04/23 职场文书
员工离职通知函
2015/04/25 职场文书
小学四年级作文之人物作文
2019/11/06 职场文书
Python机器学习之PCA降维算法详解
2021/05/19 Python
升级 Win11 还是坚守 Win10?微软 Win11 新系统缺失功能大盘点
2022/04/05 数码科技