原生js实现基本选择器

Posted 呆呆呆呆呆丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原生js实现基本选择器相关的知识,希望对你有一定的参考价值。

      在我们刚接触javascript时,在文档中发现一些常选择器,如:document.getElementById,document.getElementsByTagName,document.getElementByName,document.getElementsByClassName等等。再实际应用中,我觉得常用的选择器为id选择器。类选择器,标签选择器。

      然而当我们接触到jquery后,习惯用于$(‘xxxx‘)选择器来获取Dom元素。

  当我们用原生JavaScript时,会觉得每次用这些选择器时,都会有一长串代码。再这里,我自己封装了一个通用的jquery式的获取方式在原生JavaScript获取Dom元素。

  

  //获取id 传入 #+id
  //获取class 传入 .+class
  //获取标签 传入 标签名
  function $(obj){
    var which = obj.substr(0, 1);
    var newName =obj.split(which)[1];
    if(which==‘#‘){
      return document.getElementById(newName);
    }else
    if(which==‘.‘){
      return document.getElementsByClassName(newName);
    }else{
      return document.getElementsByTagName(obj);
    }
  }

  这里,我们发现,这个方法使用和jquery的选择器区别不大。当我们要用id选择器时,只需要调用 $(‘#id‘),就可以。class时,调用$(‘.class‘),标签时,调用$(‘p‘),即可。对了习惯了jquery的童鞋来说,非常的方便快捷。

 

 

  这里,我们也可以通过 document.querySelector(‘#id||.class||tagname‘),来获取dom元素。

 

以上是关于原生js实现基本选择器的主要内容,如果未能解决你的问题,请参考以下文章

强大的js原生选择器 document.querySelector()

JS选择器querySelector和~All,三个原生选择器

jq-选择器

jQuery原理系列-css选择器实现

初识JQuery-选择器

前端开发常用js代码片段