代码改变世界

data应用

2016-06-14 16:44  孤独大兔子  阅读(99)  评论(0)    收藏  举报

一、在使用jquery mobile时,经常会看到data-role、data-theme等的使用,先写一个小例子

html

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

css

<style>
.ui_header {
background-color: black;
text-align: center;
color:white;
border:1px solid #000;
}
</style>

js

<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>

最后应用到了所写的css

二、通过jquery来读取data属性

$().data();

三、在html中data可以是json形式

<div id="awesome-json" data-awesome='{"game":"on"}'></div> 
var gameStatus= jQuery("#awesome-json").data('awesome').game;