<img src="1.jpg" id="img1">
<img src="1.jpg" id="img2">
<img src="1.jpg" id="img3">
点击一个按钮获取src
<input type="button" value="获取src" onclick="aa()">
js中:
function aa(){
var img1 = document.getElementById("img1").src
//别的一样获取。这样获取的src是绝对路径
}
或者这样:
function aa(){
var img1 = document.getElementById("img1").getAttribute("src")
//跟上面效果一样。
}
你不妨先用 console.log(this)查看下当前被点击元素的 this 属性,然后可以看见里面有个$index属性,该属性指向的就是DOM元素列表中当前被点击的那个DOM的下标,只需要使用this.$index即可对当前元素设置特有属性和方法。除此之外this属性里面还包含了其他很多方法和属性,都可以用来区分当前被操作了的dom,前提是你用法得当。当然,最简单快捷的办法是直接使用this关键字来解决问题。改成w=w.offsetWidthjs获取Html元素的实际宽度高度
第一种情况就是宽高都写在样式表里,就比如#div1{width:120px}。这中情况通过#div1.style.width拿不到宽度,而通过#div1.offsetWidth才可以获取到宽度。
第二种情况就是宽和高是写在行内中,比如style="width:120px",这中情况通过上述2个方法都能拿到宽度。
小结,因为id.offsetWidth和id.offsetHeight无视样式写在样式表还是行内,所以我们获取元素宽和高的时候最好用这2个属性。注意如果不是写在行内style中的属性都不能通过id.style.atrr来获取。
现在的前端制作很少直接把样式写style里了,都是写在样式表里。如果你要获取的样式没有相对应的(就像#div1.style.width对 应#div1.offsetWidth),就只能分别针对不用浏览器来获取样式表的属性了,可以试着搜索“JS 获取样式属性”之类的。