首页 > 技术文章 > jQuery 属性操作

llanq123 2020-10-09 23:29 原文

1. jQuery 属性操作

jQuery 常用属性操作有三种:prop() / attr() / data() ;

1.1 元素固有属性值 prop()

所谓元素固有属性就是元素本身自带的属性,比如 <a> 元素里面的 href ,比如 <input> 元素里面的 type。

语法

1.获取属性语法
prop("属性")
2.设置属性语法
prop("属性", "属性值")

注意:prop() 除了普通属性操作,更适合操作表单属性:disabled / checked / selected 等。

1.2 元素自定义属性值 attr()

用户自己给元素添加的属性,我们称为自定义属性。 比如给 div 添加 index =“1”。

语法

1.获取属性语法
attr("属性") // 类似原生getAttribute0
2.设置属性语法
attr("属性", "属性值") // 类似原生setAttribute0

注意:attr() 除了普通属性操作,更适合操作自定义属性。(该方法也可以获取 H5 自定义属性)

1.3 数据缓存 data()

data() 方法可以在指定的元素上存取数据,并不会修改 DOM 元素结构。一旦页面刷新,之前存放的数据都将被移除。

语法

1.附加数据语法
data("name","'value") // 向被选元素附加数据
2.获取数据语法
date("name")
//向被选元素获取数据

注意:同时,还可以读取 HTML5 自定义属性 data-index ,得到的是数字型。

演示代码

<body>
   <a href="http://www.itcast.cn" title="都挺好">都挺好</a>
   <input type="checkbox" name="" id="" checked>
   <div index="1" data-index="2">我是div</div>
   <span>123</span>
   <script>
       $(function() {
           //1. element.prop("属性名") 获取元素固有的属性值
           console.log($("a").prop("href"));
           $("a").prop("title", "我们都挺好");
           $("input").change(function() {
               console.log($(this).prop("checked"));
          });
           // console.log($("div").prop("index"));
           // 2. 元素的自定义属性 我们通过 attr()
           console.log($("div").attr("index"));
           $("div").attr("index", 4);
           console.log($("div").attr("data-index"));
           // 3. 数据缓存 data() 这个里面的数据是存放在元素的内存里面
           $("span").data("uname", "andy");
           console.log($("span").data("uname"));
           // 这个方法获取data-index h5自定义属性 第一个 不用写data- 而且返回的是数字型
           console.log($("div").data("index"));
      })
   </script>
</body>

 

推荐阅读