用于类/ id选择的轻量级替代jQuery

前端之家收集整理的这篇文章主要介绍了用于类/ id选择的轻量级替代jQuery前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我想要构建一个非依赖的 JavaScript框架/脚本.有没有办法利用jQuery的惊人的类和元素选择功能
$('.this') or $('#this') or $('div','.this')

不依赖于jQuery或使用jQuery,如果它可用,但如果没有,它可以没有它吗?我搜索了这个高低.也许我正在搜索不正确,因为我最接近的是这样的:

Selecting elements without jQuery

但是,这并不像我想要的一样深入,或者像我想要的jQuery一样.我已经考虑挖掘jQuery源代码,并将这些内容挖出来并使用它,但我希望有人已经做到了,我只是在错误的地方看,有人知道它.

更新

这已经在几个方面回答了,谢谢你的快速回复.我正在用错误方法进行搜索.我终于来了:https://github.com/ded/qwery

然而,这个答案完美地完成了这个工作:
Lightweight alternative to jQuery for class / id selecting

解决方法

除了IE6和IE7之外,您可以使用document.querySelectorAll或someElement.querySelectorAll来执行类似的选择功能.

更新更多细节:

看起来ZeptoJS做如下.这对于$$(document,’#myid’),$$(document,’.myclass’),’div’)和$$(document,’div>)的缓慢搜索使用快速函数.我的课’)

var classSelectorRE = /^\.([\w-]+)$/,idSelectorRE = /^#([\w-]+)$/,tagSelectorRE = /^[\w-]+$/;

$$= function(element,selector){
  var found;
  return (element === document && idSelectorRE.test(selector)) ?
    ( (found = element.getElementById(RegExp.$1)) ? [found] : [] ) :
    Array.prototype.slice.call(
      classSelectorRE.test(selector) ? element.getElementsByClassName(RegExp.$1) :
      tagSelectorRE.test(selector) ? element.getElementsByTagName(selector) :
      element.querySelectorAll(selector)
    );
}

猜你在找的jQuery相关文章