H5自定义属性的规定和添加获取自定义属性的方法

元素属性那么多,如何区分是自带的属性还是默认的属性呢?

H5规定自带的属性有个data- 前缀,如data-index="1",那么,如何设置和获取属性值呢,请看下文。

    <script>
        var divele = document.querySelector("div");
        //我们常用的添加和获取自定义属性
        divele.setAttribute("flag", 1);
        console.log(divele.getAttribute("flag"));

        //属性那么多,如何区分是自带的属性还是默认的属性呢?
        //H5规定自带的属性有个data- 前缀,如data-index="1"
        divele.setAttribute("data-index", 1);
        console.log(divele.getAttribute("data-index")); //兼容性比较好
        //H5新增的获取属性值得方法,元素对象.dataset.index, dataset是个自定义属性(规范的data-开头)的集合
        console.log(divele.dataset.index);
        //divele.dataset[`index`]   获取对象属性的第二种方式
        console.log(divele.dataset[`index`]);

        //问题来了,如果自定义属性被很多连接符拼接而成呢?
        divele.setAttribute("data-temp-name", 2);
        //获取的时候用驼峰法
        console.log(divele.getAttribute("data-temp-name")); //这种方式正常写
        console.log(divele.dataset.tempName);
        console.log(divele.dataset[`tempName`]);
    </script>

原文地址:https://www.cnblogs.com/lzal/p/11408877.html

时间: 2024-11-13 10:19:52

H5自定义属性的规定和添加获取自定义属性的方法的相关文章

jquery获取自定义属性(attr和prop)实例介绍

jquery获取自定义属性(attr和prop)实例介绍 作者: 字体:[增加 减小] 类型:转载 jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式 $("form").attr("check"); $("form").prop("check"); 两种都可以,不过新版jquery推荐第二种,两个在其他

设置与获取自定义属性

设置自定义属性: setAttribute("name", "value"); 获取自定义属性: getAttribute("name"); <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>DEMO - Lik</title> </head

jquery 获取自定义属性值

jquery获取自定义属性的值 //方法 1 <div id="text" value="黑哒哒的盟友"><div> jQuery取值: $("#text").attr("value"); //方法 2 <div id="text" value="123"  data_obj="黑哒哒的盟友"><div> JQUERY取

vue.js click点击事件获取当前元素对象及获取自定义属性

Vue.js可以传递$event对象 <body id="app"> <ul> <li :data-price="m.price" v-on:click="say('hello!', $event)">点击当前行文本</li> <li>li2</li> <li>li3</li> </ul> <script> new Vue({

1.给栈添加一个获取最小值的方法(元素为Integer型),要求时间复杂度为O(1)

分析:在数据结构与算法中,当要求时间复杂度最小时基本都是要牺牲空间复杂度.栈是先进后出,此处要求用栈实现一个获取最小值的方法且时间复杂度为O(1),首先考虑的方向就是再借助一个栈来实现,这个栈主要用来保存最小值序列(这个地方可以思考一下为什么不能用一个变量来保存最小值). 下面直接附上代码: public class StackMin{ Stack<Integer> stackDate=new Stack<>();//一个普通栈,存入进入栈的元素 Stack<Integer&

Windows XP添加HP网络打印机的方法

公司有一HP LaserJet 3052网络打印机,Windows 7以上的Windows系统安装网络打印机时都没有问题,唯独Windows XP系统安装时无法顺利安装. 最后想了一个办法,在已经安装网络打印机的系统上看此网络打印机采用什么样的TCP/IP端口,然后在Windows XP上添加端口即可,事实证明,方法可行. 越简单越快乐! 第一步:在"控制面板"找到"设备与打印机",右键单击打印机图标,选择"打印机属性". 第二步:打开"

使用JS获取当前地理位置方法汇总(如用谷歌接口,会出再以上报错,必须申请密钥并设置接受服务器IP!!!)

RefererNotAllowedMapError 错误 加载 Google Maps JavaScript API 的当前 URL 尚未添加到允许的引用站点列表中.请在 Google API Console 上检查您的 API 密钥的引用站点设置. 请参阅 Google API Console 中的 API 密钥.如需了解详细信息,请参阅 API 密钥安全使用最佳实践. 如用谷歌接口,会出再以上报错,必须申请密钥并设置接受服务器IP!!! 今年的项目开发中,初步接触了移动端WEB开发,也就边学

GetPathFromUri4kitkat【Android 4.4 kitkat以上及以下根据uri获取路径的方法】

版权声明:本文为博主原创文章,未经博主允许不得转载. 前言 在Android4.4之前和之后,通过Intent调用文件管理器选择文件,获取的文件uri地址形式是不同的. Android6.0 content://com.android.providers.media.documents/document/image%3A593410 Android4.2.2 file:///storage/emulated/0/Pictures/Screenshots/Screenshot_2017-04-17

C#后台创建控件并获取值的方法

本文实例讲述了C#后台创建控件并获取值的方法.分享给大家供大家参考.具体实现方法如下: 前台代码: 代码如下: <form id="form1″ runat="server"> <div> <div class="item"> Please input a number: <asp:TextBox runat="server" CssClass="item" ID="