var imgStr = "<p><img src='http://www.baidu.com/FpmF-JifNksQTHo7InP_LMukbtWc'/></p>"
//解析富文本获取img里面的src属性值
var patt = /<img[^>]+src=['"]([^'"]+)['"]+/g
var result = [],
temp
while ((temp = patt.exec(imgStr)) != null) {
result.push({'url':temp[1]})
}
console.log(result) //http://www.baidu.com/FpmF-JifNksQTHo7InP_LMukbtWc
二、获取指定元素属性值
function getDomAttr(str,tag,attr) {
// const val = /(?<=data-value=").*?(?=")/
var patt = `/<${tag}[^>]+${attr}=['"]([^'"]+)['"]+/g`
let temp = patt.exec(str)
// console.log('str.match(val)', temp)
return temp[1]
}
用js获取页面元素:
1、getElementById()
返回一个值 或者报错null
2、getElementsByName()
返回htmlcollection
3、getElementsByTagName()
返回htmlcollection
4、getElementsByClassName()
返回htmlcollection
var vlaue =document.getElementByClassName("classname")
for(var i=0i<value.lengthi++){
console.log (value[i].value ) //对象.属性
}
JS认为HTML文件会被浏览器解析为文档流,写在HTML里面的所有标签元素都可以从文档流中读取到。基于这个理论,JS定义了一个document对象,专门用来处理文档流。
要想获取一个元素,有两种方式:一种是根据元素的类名(class属性值),另一种是根据元素的ID。假设有一个input元素,JS获取该元素的方式如下:
<input class="isInput" id="input_first">
var element=document.getElementByClass("isInput")[0]或者
var element=document.getElementById("input_first")
需要注意的是,根据类名获取到的是一个数组,必须要通过下标才能获取到具体的某个元素。而根据ID获取到的则是具体的元素,所以常用的方式是用ID来获取。