首页 > web前端 > H5教程 > 正文

H5中如何获取和设置自定义属性

一个新手
发布: 2017-09-14 10:26:50
原创
3330 人浏览过

给元素自定义属性是在HTML5中新加入的一个特性。简单来说,自定义数据属性规范规定任何以data-开头属性名并且赋值。自定义数据属性是为了保存页面或者应用程序的私有自定义数据,这些自定义数据属性保存进DOM中,对于整个DOM的布局和表现无任何影响,但是却可以方便操控整个网页的交互以及想要表达的效果。
   比如我们通过一个对象得到了某个地区所有的城市,但是呢,我们还需要得到城市的其他信息以方便接下来的操作,我们就可以在这个城市的标签中添加一个自定义属性,用来存放这个地区的其他信息,操作的时候直接通过我们设置的属性名拿值即可,可以很大空间的提升我们和计算机的操作量。
   往属性里面存值的时候注意一定是字符串或者,所以需要存的数据是一个对象的时候,记得转化成字符串

var cityStr = JSON.stringify(cityObj);
登录后复制

对于数据属性值的获取和设置,JQ提供了两种方法attr()data()
这两种方法,当只传递一个参数时,这个参数时属性名,是获取该属性的值,
当传递两个参数时,是设置属性名,属性值

 $(selector).attr(attribute,value)
登录后复制

下面是用data来实现存取自定义属性的小案例:

<p id="box1"></p><button id="btn1">click1</button><button id="btn2">click2</button></body><script src="../assets/jquery-1.9.1.min.js"></script><script>
    //点击click1向box添加属性student,属性值为tom
    $("#btn1").click(function () {
        $("#box1").data("student","tom")
    });    //通过属性名获取属性值
    $("#btn2").click(function () {
        alert($("#box1").data("student"));
    });</script>
登录后复制

用attr来实现同样的效果

<script>
    $("#btn").click(function () {
        $("#box1").attr("data-student","tom")
    });
    $("#btn2").click(function () {
        alert($("#box1").attr("data-student"));
    });</script>
登录后复制

这里写图片描述
通过开发者工具可以看到,当点击保存按钮(click1)的时候,自动给box1添加了自定义的属性,用data方法添加的时候这里并不会看见data-student=”tom“,依旧可以通过它取出来其值”tom“,两个并无多大区别,只是引用方式不同而已。属性名前面加上  data-   是H5规范写法,最好加上。

这里还要注意的是
1. 自定义的属性名不可以与系统的属性名相同,eg:  class、name….
2. 所有的属性值只能是字符串,不管是系统还是自定义的
3. Html5规定,给元素自定义数据属性时,属性名称以data-开头,但是真正的属性名不包括data-

以上是H5中如何获取和设置自定义属性的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!