js 选择器
2016-05-28 21:47
459 查看
var queryEle = function(selector){ var selectReg = /^(#)?(\.)?(\w+)$/img; var result = selectReg.exec(selector), data = []; //id if(result[1]){ if(result[3]){ if(typeof document.querySelector=='function'){ return document.querySelector(result[1]+result[3]); }else{ return document.getElementById(result[3]); } } }else //class if(result[2]){ if(result[3]){ if(typeof document.getElementsByClassName=='function'){ var dom = document.getElementsByClassName(result[3]); if(dom){ return converArr(dom); } }else{ var dom2 = document.getElementsByTagName('*'); for(var i=0;i<dom2.length;i++){ if(dom2[i].className.test(new RegExp(result[2]))){ data.push(dom2[i]); } } } return data; } }else if(result[3]) { var doms = document.getElementsByTagName(result[3].toLowerCase()); if(doms) { result = converArr(doms); } } return result; }; function converArr(dom){ var arr = null; try{ arr = Array.prototype.slice.call(dom,0); }catch(e){ for(var i=0;i<dom.length;i++){ arr.push(dom[i]); } } return arr; } console.log(queryEle('.left'));
相关文章推荐
- 《JavaScript学习笔记二》:网页换肤
- js小结:函数&变量
- js 检测flash 版本
- JavaScript OOP
- fastjson-alibaba
- 怎么取消Eclipse中对JavaScript文件的校
- 《JavaScript学习笔记一》鼠标提示框
- Chrome 开发工具 Javascript 调试技巧
- jsp作为服务端,ajax请求回应
- JS鼠标事件大全
- Jsp之五 过滤器与监听器
- Jsp之五 过滤器与监听器
- Jsp之五 过滤器与监听器
- fastjson生成JSON字符串的时候出现$ref
- Javascript的Date类型总结
- JavaScript书单
- 几种JS转跳页面方式
- javascript 工作必知(四) 类型转换
- 一个页面可以重复调用的TAB选项卡切换js代码 鼠标悬浮
- fastjson序列化hibernate查询的数据报错:failed to lazily initialize a collection of role