可能大家在使用jquery mobile时,经常会看到data-role、data-theme等的使用,比如:通过如下代码即可实现页眉的效果:

[html
<div data-role="header"> 
    <h1>我是标题</h1> 
</div> 
 
为什么写一个data-role="header"就能实现底部为黑色、文字居中显示的效果呢?

本文提供一种最简单的实现办法,让大家对这些用法有个直观的了解。

我们写一个html页面,自定义一个data-chb="header"的属性,希望具备这个属性的div区域背景颜色为黑色,文字为白色,居中显示;不具备data-chb自定义属性的div按照默认方式显示,html代码如下:

[html]
<body> 
  <div data-chb="header"> 
    <h1>我是使用了data-chb自定义属性的div</h1> 
  </div> 
  <br/> 
  <div> 
    我没有使用data-chb自定义属性,该怎么展现就怎么展现; 
  </div> 
</body>

要想实现"背景颜色为黑色,文字为白色,居中显示"的显示效果,我们定义如下的css:
[css] 
 <style> 
 .ui_header { 
   
  text-align: center; 
  color:white; 
  border:1px solid #000; 

 </style>

然后我们通过如下js方法实现在页面加载时,动态添加css定义,改变具备data-chb属性的div的显示样式:
[javascript]
  <script type="text/javascript"> 
  window.onload=function(){ 
    var elems = document.getElementsByTagName("div"); 
    if(elems!=null&&elems.length>0){ 
      var length = elems.length; 
      //遍历所有DIV控件 
      for(var i=0;i<length;i++){ 
        var elem = elems[i]; 
        //获取该控件的自定义属性 
        var customAttr = elem.dataset.chb; 
        //也可以通过如下方式获得自定义属性 
        //var customAttr = elem.dataset["chb"]; 
        //如果是我们预先定义好的header值,表示需要处理 
        if(customAttr=="header"){ 
          //添加样式 
          elem.setAttribute("class","ui_header"); 
        } 
      } 
    } 
  } 
</script>

HTML5自定义data属性的更多相关文章

  1. 【翻译】详解HTML5 自定义 Data 属性

    原标题:HTML5 Custom Data Attributes (data-*) 你是否曾经使用 class 或 rel 来保存任意的元数据,只为了使你的JavaScript更简单?如果你回答是的, ...

  2. 【转载】HTML5自定义data属性

    可能大家在使用jquery mobile时,经常会看到data-role.data-theme等的使用,比如:通过如下代码即可实现页眉的效果:   [html]  <div data-role= ...

  3. js(jQuery)获取自定义data属性的值

    有时候因为需要在标签上设置自定义data属性值, <div class="col-sm-6 col-md-4" id="get_id" data-c_id ...

  4. js 获取html5的data属性

    我以前一直以为只能用jquery的data()来获取 哈哈 是我太弱了 <!DOCTYPE html> <html> <head> <title>dat ...

  5. js获取自定义data属性

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  6. js取自定义data属性

    //20170329 原本以为只能attr或者prop来获取属性,但是今天看别人的代码他自定义了一个属性,却取不到他的属性值,我自己在本地又可以取到,难道是phtml的原因,于是我到网上查找,发现了一 ...

  7. html5的自定义data-*属性和jquery的data()方法的使用示例

    人们总喜欢往HTML标签上添加自定义属性来存储和操作数据. 但这样做的问题是,你不知道将来会不会有其它脚本把你的自定义属性给重置掉,此外,你这样做也会导致html语法上不符合Html规范,以及一些其它 ...

  8. html5 data属性的使用

    html5 data属性定义和用法 <ul> <li data-animal-type="bird">Owl</li> <li data- ...

  9. HTML data属性简介以及低版本浏览器兼容算法

    实例 使用 data-* 属性来嵌入自定义数据: <ul> <li data-animal-type="bird">Owl</li> <l ...

随机推荐

  1. Unity角色对话

    对话类------------------------------------------------------------------------------------------------- ...

  2. 微软职位内部推荐-Senior Software Engineer_HPC

    微软近期Open的职位: Job Title: Senior Software Engineer_HPC Location: Shanghai, China Are you passionate ab ...

  3. PHP学习 函数 function

    参数默认值function drink($kind ='tea'){echo 'would you please a cup'.$kind.'<br>';} drink();drink(' ...

  4. PAT甲题题解-1001. A+B Format (20)-字符串处理,水

    计算A+B的和,并且按标准格式处理,每3个就要有个逗号 #include <iostream> #include <cstdio> #include <algorithm ...

  5. 1086. Tree Traversals Again (25)-树的遍历

    题意:用栈的push.pop操作给出一棵二叉树的中序遍历顺序,求这棵二叉树的后序遍历. 需要一个堆结构s,一个child变量(表示该节点是其父亲节点的左孩子还是右孩子),父亲节点fa对于push v操 ...

  6. 每日scrum(2)

    今天是冲刺的第二天,小组主要做了界面的美化,加入了软件的开始动画,以及学校景点的美图介绍: 主要的问题在于除了开始界面,进入软件之后还是有待改进,功能的呈现有待加强. 任务看板: 燃尽图: 会议照片:

  7. 班级博客与coding地址

    队名 队长 成员1 成员2 成员3 成员4 成员5 团队博客地址 奥特曼小分队 李全清 胡林状 王栋 孙杏子 孙乐 刘泽良 http://www.cnblogs.com/atmxfd/ 蜗牛上天队 仝 ...

  8. 小学生二元四则运算(F)

      整体功能简介: 1.题目不重复: 2.可以定制数量: 3.可以自己选择输入范围: 4.可以选择是否添加乘除法: 5.可以选择除法结果是取整或商加余数形式表示或小数方式(默认小数点后两位)表示: 6 ...

  9. Windows 防火墙出站 入站规则简单说明

    1. Windows防火墙其实比linux的iptabels 要好用一些. 打开设置方式: 运行->输入control即可 选择系统和安全 2.win2019 以及改名字了 现在是 window ...

  10. Windows 创建计划任务 实现自动同步文件.

    0 感觉自己还是缺乏让计算机去工作的思维, 缺少编程和算法的想法与实践做法. 0x1 打开计划任务 方法: 运行-> 输入 control -> 大图标->管理工具 打开任务计划程序 ...