tnblog
首页
视频
资源
登录

Jquery选择器的简单实现

2040人阅读 2019/4/4 16:09 总访问:2040 评论:0 收藏:0 手机
分类: 随笔

一、原生JS提供给我们的选择器

  1. document.getElementById();
  2. document.getElementsByTagName();
  3. ...

这是以前常用的,但是实际上几乎所有的浏览器都给我们提供了如下的方法让我们可以快速的获取元素

  1. document.querySelector(parameter);//查找满足满足参数的第一个元素
  2. document.querySelectorAll(parameter);//查找满足参数的全部元素
  3. //这里的参数其实就是CSS选择器的写法

通过上面的两个函数我们其实很容易实现Jqeury的选择器了。

  1. //先声明一个对象
  2. function Selector(o){
  3.     var eles = document.querySelectorAll(o);
  4.     //我们来实现val函数 获取值
  5.     eles.val = function(){
  6.         var value = [];
  7.         for(var i =0;i<eles.length;i++){
  8.             value.push(eles[i].value);
  9.         }
  10.         return eles.length==1?value[0]:value;
  11.     }
  12.     //返回eles对象
  13.     return eles;
  14. }
  15. //给window对象添加属性
  16. window.Jquery = function(o){
  17.     return new Selector(o);
  18. };
  19. window.$=Jquery;

然后就可以通过 $("选择器")进行调用了。

完整代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Document</title>
  8. </head>
  9. <body>
  10. <input type="text" value="123"/>
  11. <script>
  12. function Selector(o){
  13. var eles = document.querySelectorAll(o);
  14. eles.val = function(){
  15. var values= [];
  16. for(var i = 0;i<this.length;i++){
  17. values.push(this[i].value);
  18. }
  19. return values.length==1?values[0]:values;
  20. }
  21. return eles;
  22. }
  23. window.Jquery = function(o){
  24. return new Selector(o);
  25. }
  26. window.$=Jquery;
  27. </script>
  28. </body>
  29. </html>

试试$("input").val()能否获取到123。

评价

Jquery右击自定义显示菜单+自定义换肤

结合右击显示菜单来做的效果图:代码:&lt;!doctypehtml&gt; &lt;html&gt; &lt;head&gt; &lt;metacharset=&quot;gbk&quo...

可输入下拉文本框,据输入,动态加载数据 Jquery-editable-select

用到一个jquery-editable-select的控件github地址:https://github.com/indrimuska/jquery-editable-select这个插件的原理是...

Jquery判断滚动条是否到底部

有时间我们需要判断滚动条是否已经滚动到底部,例如我们要做滚动刷新的功能$(window).height():一个屏幕的高度注意这个方法...

Jquery if 判断会判断字段的那些情况

Jquery if 判断会对对象的判断1:判断是否未null2: 判断是否未空3: 判断是否未0当我们写if 判断的时候可以不用书写为var ...

Jquery常用选择器

html&lt;divid=&#39;content&#39;&gt; &lt;div&gt;aa&lt;/div&gt; &lt;div&gt;bb&lt;/div&gt; &lt;div&gt;cc&lt;/div&gt...

Jquery删除表格的行Id自适应

jquery删除表格的行,Id自适应,删除后让id不断层还是依次排列//删除(id自适应) $(&quot;.usertable&quot;).on(&quot;click&...

思宇上课笔记—初识Jquery

JQuery(前端)什么是jQuery?jQuery就只是一个一个JavaScript函数库而已什么是js的库就是封装的一些js常用的的方法。eg:Dom...

思宇上课笔记—Jquery插件的编写

jQuery课堂实例相信我们每个人在学习jQuery中,都或多或少的使用到了jQuery插件,jQuery插件使用起来确实非常的方便,快捷...

Jquery—为动态添加的元素绑定事件

我们在使用jQuery的时候总会遇到形形色色的问题在jQuery的元素绑定事件中,我通常使用click来绑定单击事件,但是这个只能绑...

js、Jquery获取文本的宽高

页面编写:&lt;!DOCTYPEhtml&gt; &lt;html&gt; &lt;head&gt; &lt;metacharset=&quot;UTF-8&quot;/&gt; &lt;title&gt;jQ...

Jquery验证插件formValidator,AJAX验证手动传值

AJAX验证默认会传递你绑定的id的name值回去,如何你想传递其他值回去的话,直接这样写是不行的应该要这样使用,通过一个方...

使用Jquery操作元素的css样式(获取、修改等等)

使用jquery操作元素的css样式(获取、修改等等) //1、获取和设置样式 $(&quot;#tow&quot;).attr(&quot;class&quot;)...

Jquery Validate 验证插件 基本使用

插件引用地址:&lt;scriptsrc=&quot;http://static.runoob.com/assets/jquery-validation-1.14.0/dist/jquery.validate.min...

Jquery分页条

jQuery分页条下载地址:https://www.jb51.net/jiaoben/589208.html1、在前台HTML页引入js以及css文件&lt;scriptsrc=&quot;~...

Jquery选择器结束

类选择器:$(“.类名”)Id选择器:$(“#id名”)属性选择器:$(“[属性名=’属性值’]”)元素选择器:$(“元素”) 比如$(“div...
没有个性,不需要签名
排名
141
文章
1
粉丝
0
评论
0
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术
毁灭你,与你有何相干?