jQuery技术

.attr()和.removeAttr()方法操作元素属性(2)

字号+ 作者:H5之家 来源:H5之家 2017-06-17 17:04 我要评论( )

这种方法可以让你基于元素的位置,固定属性值或其他属性值动态改多个元素的属性值,而此函数必须接受下面两个参数: index是用来设置当前元素的索引位置(从0开始计算) 当前元素的属性的旧属性值 其主要就是使用函

这种方法可以让你基于元素的位置,固定属性值或其他属性值动态改多个元素的属性值,而此函数必须接受下面两个参数:

  • index是用来设置当前元素的索引位置(从0开始计算)
  • 当前元素的属性的旧属性值
  • 其主要就是使用函数返回的值来替代匹配元素指定的属性的属性值。接下来我们来看一个实例:

    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

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 滚屏加载--无刷新动态加载数据技术的应用

      滚屏加载--无刷新动态加载数据技术的应用

      2017-06-17 10:00

    • jQuery Mobile 基础教程

      jQuery Mobile 基础教程

      2017-06-08 17:05

    • js控制文本框只输入数字和小数点的方法

      js控制文本框只输入数字和小数点的方法

      2017-06-08 11:03

    • jQuery前端开发35个小技巧

      jQuery前端开发35个小技巧

      2017-06-01 18:02

    网友点评
    l