DOM兼容-elemen.dataset

来源:互联网 发布:淘宝客推广赚钱 编辑:程序博客网 时间:2024/06/08 17:56
//Web前端学习-DOM
//引用:http://blog.csdn.net/qq_21794603/article/details/72732150
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>dataset兼容</title></head><body>    <div class="class1" id="id1" data-name="dataname1" data-time="2017" data-account-name="ada" lang="en">    Hello    </div><script>function dataset (ele) {         // if(ele.dataset){    //     return ele.dataset;    // }else{        var dataset = {};        // 获取标签内的所有属性,以空格分割            var datastr = ele.outerHTML.split(">")[0];        console.log("目标属性HTML语句: " + datastr);        datastr = datastr.split(" ");        console.log("语句分割数组: " + datastr);        // 遍历         var value, key, index, char0;               for(var i = 0; i < datastr.length; i++){            //正则判断是否以data-开头              console.log("---" + i + "---");             console.log(datastr[i]);                  if(/^data-/.test(datastr[i])){                key = datastr[i].split("=")[0].slice(5);                console.log("data-属性名:" + key);// 添加属性名处理                index = key.indexOf("-");                while(index > 0){                char0 = key.substring(index + 1, index + 2);                char0 = char0.toUpperCase();                key   = key.replace(/-./, char0);                index = key.indexOf("-");                }                console.log("data-属性名:" + key);                 value =  datastr[i].split("=")[1].slice(1,-1);                console.log("data-属性值:" + value);                 dataset[key] = value;            }        }        return dataset;    // }};var elem = document.getElementById("id1")  elemData = dataset(elem);  console.log(elemData);</script></body></html>

原创粉丝点击