简单封装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 相关文章推荐
jquery 取子节点及当前节点属性值
Jul 25 Javascript
javascript点击按钮实现隐藏显示切换效果
Feb 03 Javascript
JS获取input file绝对路径的方法(推荐)
Aug 02 Javascript
js实现炫酷的左右轮播图
Jan 18 Javascript
原生js封装自定义滚动条
Mar 24 Javascript
微信小程序获取用户openId的实现方法
May 23 Javascript
JavaScript-定时器0~9抽奖系统详解(代码)
Aug 16 Javascript
微信小程序时间轴实现方法示例
Jan 14 Javascript
详解JS预解析原理
Jun 16 Javascript
js canvas实现俄罗斯方块
Oct 11 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
Nov 13 Javascript
微信小程序用户登录和登录态维护的实现
Dec 10 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
如何分别全角和半角以避免乱码
2006/10/09 PHP
PHP 编程的 5个良好习惯
2009/02/20 PHP
用PHP读取flv文件的播放时间长度
2009/09/03 PHP
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
2011/12/05 PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
2014/08/21 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
全面解读PHP的Yii框架中的日志功能
2016/03/17 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
PHP 布尔值的自增与自减的实现方法
2018/05/03 PHP
PHP设计模式之外观模式(Facade)入门与应用详解
2019/12/13 PHP
Jquery中国地图热点效果-鼠标经过弹出提示层信息的简单实例
2014/02/12 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
很棒的vue弹窗组件
2017/05/24 Javascript
浅谈webpack打包之后的文件过大的解决方法
2018/03/07 Javascript
关于微信小程序map组件z-index的层级问题分析
2019/07/09 Javascript
vue.config.js常用配置详解
2019/11/14 Javascript
Element Tooltip 文字提示的使用示例
2020/07/26 Javascript
手把手教你实现 Promise的使用方法
2020/09/02 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
python中获得当前目录和上级目录的实现方法
2017/10/12 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
pycharm远程连接vagrant虚拟机中mariadb数据库
2020/06/05 Python
基于python和flask实现http接口过程解析
2020/06/15 Python
Python OpenCV去除字母后面的杂线操作
2020/07/05 Python
伦敦一家领先的精品零售商:IRIS Fashion
2019/05/24 全球购物
房地产还款计划书
2014/01/10 职场文书
中秋节礼品促销方案
2014/02/02 职场文书
农民工工资支付承诺书
2015/05/04 职场文书
计划生育责任书
2015/05/09 职场文书
家长对孩子的寒假评语
2015/10/09 职场文书
2019新学期家长会工作计划
2019/08/21 职场文书
MySQL之DML语言
2021/04/05 MySQL
浅谈TypeScript 索引签名的理解
2021/10/16 Javascript