js获取html元素的方式

js获取html元素的方式,第1张

js获取html元素的方式

+通过ID获取:getElementById('id属性值')

+通过标签名:getElementsByTagName('标签名')

+通过类名:getElementsByClassName('类名')

+通过name属性:getElementsByName('name属性值')

+通过选择器获取一个元素:querySelector

+通过选择器获取一组元素:querySelectorAll

1.获取id值为d1的html元素

将获取到的html元素称为DOM节点对象,必须传参数,参数是string类型,是获取元素的id。返回值只获取到一个元素,没有找到返回null。

2.通过标签名:getElementsByTagName('标签名')

参数是是获取元素的标签名属性,不区分大小写,根据标签名获取html元素, 返回的是一个数组(伪数组) 

通过类名:getElementsByClassName('类名')

参数是元素的类名,返回值是一个类数组,没有找到返回空数组。

通过类名:getElementsByClassName('类名')

必须传参数,参数是是获取元素的name属性,返回值是一个类数组,没有找到返回空数组。

通过选择器获取一个元素:querySelector

参数是选择器,返回值只获取到第一个元素。

通过选择器获取一组元素:querySelectorAll

参数是选择器,返回值是一个数组。

假设我们要获取下面html标签中的内容:

第一段是获取 <p></p>标签内部的数据,第二个是获取 <p><span></span></p>标签中的数据,其中span标签中有style属性值。

使用过正则表达式的同学肯定知道,上面两种情况其实都是一种情况,我们要获取的是 尖括号括起来的一对标签 中间的数据,起始标签形如<x>,结束标签形如</x>,这里的x表示的html标签。

此外,我们还需要考虑起始标签中包含style的数据,另外特殊的 <br/>标签,对实际获取数据无意义,也需要过滤掉。

通过上面的分析,我们可以如下正则表达式:

在使用正则表达式处理之前,我们先对数据进行预处理,比如style和

标签:

针对多个标签嵌套的情况进行处理,比如 <p><span style="white-space: normal">王者荣耀</span></p>,在经过预处理和正则匹配的后结果是 <span>王者荣耀 ,需要手工移除掉前面的起始标签,对应的方法如下:

测试方法如下:

output:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7246764.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存