这种方法可以让你基于元素的位置,固定属性值或其他属性值动态改多个元素的属性值,而此函数必须接受下面两个参数:
其主要就是使用函数返回的值来替代匹配元素指定的属性的属性值。接下来我们来看一个实例:
Html Markup
<img src="images/a.jpg" alt="header"/> <img src="images/b.jpg" alt="header"/>jQuery Code
$("document").ready(function(){ $(".img").attr("alt",setAltText); function setAltText(index,attributeValue){ return ('heaer-image' + (index+1) + "_" + this.width + "_" + this.height); } });我们通过Firebug来看其前后的变化
删除元素属性上面我们主要学习了使用jQuery中的.attr()方法来设置,添加或修改元素的属性/属性值。那么我们接着来看如何删除元素的属性值。既然有加就有减嘛。那么上面我们也简单的了解了一下,删除元素的属性值我们就要使用jQuery中的.removeAttr()方法来实现。具体操作很简单,就是通过元素的属性来删除其属性值,如:
Html Markup
<a href="http://www.w3cplus.com/">w3cplus</a>jQuery Code
$("document").ready(function(){ $(".logo").removeAttr("href"); });Firebug下变化
是不是比较简单呀,那么.removeAttr()也可以同时给多个元素删除相同的属性
$("document").ready(function(){ $("a").removeAttr("href"); });今天主要学习了如何使用jQuery来操作元素的属性,最后我们总结一下:使用jQuery中的.attr()方法可以轻松的获取元素的属性值,并且可以设置单个属性的值,或者同时设置多个属性值,另外还可以使用回调函数动态设置元素的属性值;除此之外,我们还可以使用.removeAttr()方法来删除元素的属性。最后有一点平时需要注意:虽然我们可以使用.attr()和.removeAttr()方法操作元素的任何属性,但是对于"class"属性值的操作,我建议大家使用jQuery中的其他方法(.hasClass(),.addClass(),.removeClass(),.toggleClass()等方法)来实现,因为“class”属性值相对来说是比较复杂一些,大家感兴趣也可以阅读《jQuery学习笔记—— .addClass()/.removeClass()/.toggleClass()》和《jQuery中.addClass()和.removeClass()》。另外就是表单元素中的"value"属性,大家可以看看.val()方法,操作将更简单方便。
如需转载烦请注明出处:W3CPLUS