zoukankan      html  css  js  c++  java
  • 浅析jquery中attr属性和prop属性的区别

        最近在做项目的时候,发现到了prop这个属性,然后之前一直使用的是attr属性,觉得感觉上都差不多,jQuery也不可能专门做了两个相同的属性撒。所以就结合这两个属性研究了一下,也谈谈我对他们最简单最直观的理解。

    ----------------对于HTML元素本身就带有的固有属性,在处理时,使用prop方法

    ----------------对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法

    打个比方,这是我之前的:

    <a class="delete"  title="你确定要删除此条信息吗?"  aaa="delete"><span>删除</span></a>

    $(".delete").attr("href", URL);

    之前在项目中我喜欢在script里直接将a标签的href单独提出来,然后使用attr。但是标准写法应该是用prop。

    在a标签里,class和title是能够直接被浏览器识别的、W3C中存在的、a标签自带的,称为固有属性。建议使用prop。而aaa是开发者自己写的,不会被浏览器直接识别的,建议用attr,使用prop方法取值和设置属性值时,就会返回undefined值。

    具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop()。

    相比attr,prop是1.6才新出来的。只是,window或document中使用.attr()方法在jQuery1.6之前不能正常运行,因为window和document中不能有attributes。prop应运而生了。

    总的来说,就是jQuery版本差异!

  • 相关阅读:
    581. 最短无序连续子数组
    217. 存在重复元素
    189. 旋转数组
    169. 多数元素
    122. 买卖股票的最佳时机 II
    119. 杨辉三角 II
    118. 杨辉三角
    外显子分析思路总结(Exome Sequencing Analysis review)
    宁夏采样记20181129
    haploview出现“results file must contain a snp column”的解决方法
  • 原文地址:https://www.cnblogs.com/htuthf/p/5051670.html
Copyright © 2011-2022 走看看