1 /**
  2  * Created by Administrator on 2017-08-18.
  3  */
  4 //格式化日期的代码
  5 
  6 //根据id获取元素的代码
  7 
  8 //innerText和textContent的兼容
  9 
 10 //获取第一个子元素的兼容
 11 
 12 //获取最后一个子元素的兼容
 13 
 14 /**
 15  * Created by Administrator on 2017/3/24.
 16  */
 17 
 18 /**
 19  * 格式化日期
 20  * @param dt 日期对象
 21  * @returns {string} 返回值是格式化的字符串日期
 22  */
 23 function getDates(dt) {
 24     var str = "";//存储时间的字符串
 25     //获取年
 26     var year = dt.getFullYear();
 27     //获取月
 28     var month = dt.getMonth() + 1;
 29     //获取日
 30     var day = dt.getDate();
 31     //获取小时
 32     var hour = dt.getHours();
 33     //获取分钟
 34     var min = dt.getMinutes();
 35     //获取秒
 36     var sec = dt.getSeconds();
 37     month = month < 10 ? "0" + month : month;
 38     day = day < 10 ? "0" + day : day;
 39     hour = hour < 10 ? "0" + hour : hour;
 40     min = min < 10 ? "0" + min : min;
 41     sec = sec < 10 ? "0" + sec : sec;
 42     str = year + "年" + month + "月" + day + "日 " + hour + ":" + min + ":" + sec;
 43     return str;
 44 }
 45 /**
 46  * 获取指定标签对象
 47  * @param id 标签的id属性值
 48  * @returns {Element}根据id属性值返回指定标签对象
 49  */
 50 function my$(id) {
 51     return document.getElementById(id);
 52 }
 53 
 54 function setInnerText(element, text) {
 55     if (typeof element.textContent == "undefined") {
 56         element.innerText = text;
 57     } else {
 58         element.textContent = text;
 59     }
 60 }
 61 /**
 62  * 获取元素的文本内容
 63  * @param element 任意元素
 64  * @returns {*} 任意元素中的文本内容
 65  */
 66 function getInnerText(element) {
 67     if (typeof(element.textContent) == "undefined") {
 68         return element.innerText;
 69     } else {
 70         return element.textContent;
 71     }
 72 }
 73 /**
 74  * 获取父级元素中的第一个子元素
 75  * @param element 父级元素
 76  * @returns {*} 父级元素中的子级元素
 77  */
 78 function getFirstElement(element) {
 79     if (element.firstElementChild) {
 80         return element.firstElementChild;
 81     } else {
 82         var node = element.firstChild;
 83         while (node && node.nodeType != 1) {
 84             node = node.nextSibling;
 85         }
 86         return node;
 87     }
 88 }
 89 /**
 90  * 获取父级元素中的最后一个子元素
 91  * @param element 父级元素
 92  * @returns {*} 最后一个子元素
 93  */
 94 function getLastElement(element) {
 95     if (element.lastElementChild) {
 96         return element.lastElementChild;
 97     } else {
 98         var node = element.lastChild;
 99         while (node && node.nodeType != 1) {
100             node = node.previousSibling;
101         }
102         return node;
103     }
104 }
105 /**
106  * 获取某个元素的前一个兄弟元素
107  * @param element 某个元素
108  * @returns {*} 前一个兄弟元素
109  */
110 function getPreviousElement(element) {
111     if (element.previousElementSibling) {
112         return element.previousElementSibling
113     } else {
114         var node = element.previousSibling;
115         while (node && node.nodeType != 1) {
116             node = node.previousSibling;
117         }
118         return node;
119     }
120 }
121 /**
122  * 获取某个元素的后一个兄弟元素
123  * @param element 某个元素
124  * @returns {*} 后一个兄弟元素
125  */
126 function getNextElement(element) {
127     if (element.nextElementSibling) {
128         return element.nextElementSibling
129     } else {
130         var node = element.nextSibling;
131         while (node && node.nodeType != 1) {
132             node = node.nextSibling;
133         }
134         return node;
135     }
136 }
137 /**
138  * 获取某个元素的所有兄弟元素
139  * @param element 某个元素
140  * @returns {Array} 兄弟元素
141  */
142 function getSiblings(element) {
143     if (!element)return;
144     var elements = [];
145     var ele = element.previousSibling;
146     while (ele) {
147         if (ele.nodeType === 1) {
148             elements.push(ele);
149         }
150         ele = ele.previousSibling;
151     }
152     ele = element.nextSibling;
153     while (ele) {
154         if (ele.nodeType === 1) {
155             elements.push(ele);
156 
157         }
158         ele = ele.nextSibling;
159     }
160     return elements;
161 }
162 /**
163  * 返回当前浏览器是什么类型的浏览器
164  */
165 function userBrowser(){
166     var browserName=navigator.userAgent.toLowerCase();
167     if(/msie/i.test(browserName) && !/opera/.test(browserName)){
168         console.log("IE");
169     }else if(/firefox/i.test(browserName)){
170         console.log("Firefox");
171     }else if(/chrome/i.test(browserName) && /webkit/i.test(browserName) && /mozilla/i.test(browserName)){
172         console.log("Chrome");
173     }else if(/opera/i.test(browserName)){
174         console.log("Opera");
175     }else if(/webkit/i.test(browserName) &&!(/chrome/i.test(browserName) && /webkit/i.test(browserName) && /mozilla/i.test(browserName))){
176         console.log("Safari");
177     }else{
178         console.log("不知道什么鬼!");
179     }
180 }
181 
182 
183 
184 //为任意一个元素绑定事件:元素,事件类型,事件处理函数
185 function addEventListener(element,type,fn) {
186     if(element.addEventListener){
187         //支持
188         element.addEventListener(type,fn,false);
189     }else if(element.attachEvent){
190         element.attachEvent("on"+type,fn);
191     }else{
192         element["on"+type]=fn;
193     }
194 }
195 //为任意的一个元素解绑某个事件:元素,事件类型,事件处理函数
196 function removeEventListener(element,type,fn) {
197     if(element.removeEventListener){
198         element.removeEventListener(type,fn,false);
199     }else if(element.detachEvent){
200         element.detachEvent("on"+type,fn);
201     }else{
202         element["on"+type]=null;
203     }
204 }