JS如何取得当前对象的属性

JavaScript06

JS如何取得当前对象的属性,第1张

每个Img规定一个ID;

<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.offsetWidth

js获取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 获取样式属性”之类的。