简单封装js的dom查询实例代码


Posted in Javascript onJuly 08, 2016

最近一直在啃犀牛书,有感,于是写了个简单的js的dom查询

$ = function (val) {
    switch(val.charAt(0)) {
      case '#' :
        return document.getElementById(val.substring(1));
        break;
      case '.' :
        val = val.replace('.','');
        if(document.getElementsByClassName)
          return document.getElementsByClassName(val);
        else {
          var obj = document.getElementsByTagName('*'),len = obj.length,arr=[];

          for(var i=0;i<len;i++) {
            if(obj[i].className == val) {
              arr[arr.length] = obj[i];
            }
          }

          return arr;
        }
        break;
      default :
        if(document.getElementsByName(val).length > 0)
          return document.getElementsByName(val);
        else 
          return document.getElementsByTagName(val); 
    }
  }

这样一实现,以后调用id时,只需 $('#idname'),class时$('.classname'),TagName和Name都是做了个简单的判断,都是直接传 $('name'),我试了下,感觉还可以。

以上这篇简单封装js的dom查询实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JAVASCRIPT下判断IE与FF的比较简单的方式
Oct 17 Javascript
js中关于String对象的replace使用详解
May 24 Javascript
防止xss和sql注入:JS特殊字符过滤正则
Apr 18 Javascript
javascript作用域和闭包使用详解
Apr 25 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
Aug 04 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
Aug 17 Javascript
非常优秀的JS图片轮播插件Swiper的用法
Jan 03 Javascript
jQuery源码分析之init的详细介绍
Feb 13 Javascript
利用babel将es6语法转es5的简单示例
Dec 01 Javascript
JavaScript反射与依赖注入实例详解
May 29 Javascript
深度解读vue-resize的具体用法
Jul 08 Javascript
js绘制一条直线并旋转45度
Aug 21 Javascript
JS选取DOM元素的简单方法
Jul 08 #Javascript
封装获取dom元素的简单实例
Jul 08 #Javascript
jquery.serialize() 函数语法及简单实例
Jul 08 #Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
Jul 08 #Javascript
Augularjs-起步详解
Jul 08 #Javascript
Bootstrap Metronic完全响应式管理模板之菜单栏学习笔记
Jul 08 #Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
Jul 08 #Javascript
You might like
php 保留字列表
2012/10/04 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
Yii2结合Workerman的websocket示例详解
2018/09/10 PHP
phpstudy后门rce批量利用脚本的实现
2019/12/12 PHP
浏览器的JavaScript引擎的识别方法
2013/10/20 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
iframe里的页面禁止右键事件的方法
2014/06/10 Javascript
禁用页面部分JavaScript不是全部而是部分
2014/09/03 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
Vue发布项目实例讲解
2019/07/17 Javascript
angularjs自定义过滤器demo示例
2019/08/24 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
2019/09/25 Javascript
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
详解python的几种标准输出重定向方式
2016/08/15 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
2017/11/29 Python
详解python OpenCV学习笔记之直方图均衡化
2018/02/08 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
python使用suds调用webservice接口的方法
2019/01/03 Python
PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例
2019/02/13 Python
解决Python中pandas读取*.csv文件出现编码问题
2019/07/12 Python
python用quad、dblquad实现一维二维积分的实例详解
2019/11/20 Python
python循环输出三角形图案的例子
2019/11/22 Python
css背景图片的背景裁切、背景透明度、背景变换等效果运用
2012/12/24 HTML / CSS
HTML文本属性&amp;颜色控制属性的实现
2019/12/17 HTML / CSS
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
会计与审计毕业生自荐信范文
2013/12/30 职场文书
大专生自荐书范文
2014/06/22 职场文书
党员违纪检讨书
2015/05/05 职场文书
2015年教师见习期工作总结
2015/05/20 职场文书
歌咏比赛口号大全
2015/12/25 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书
再次探讨go实现无限 buffer 的 channel方法
2021/06/13 Golang
「SHOW BY ROCK!!」“雫シークレットマインド”组合单曲MV公开
2022/03/21 日漫
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android