jquery 源码相关知识
-
jQuery源码的奥妙jQuery源码的奥妙(一) 简化jQuery框架1、jQuery 源码下载 下载地址:http://jquery.com/download/ 下载版本:jquery-2.0.3.js 2、(function(){})(); // 匿名函数自执行 1)局部变量,防止冲突,互不影响。 (function(){ var a = 10; function $(){ alert(a); &nb
-
jQuery源码浅析一导语:如何提高编程能力,这几乎是媒体们采访一些编程大神的必问的问题,大部分大神都会提到多读源码,本人觉得确实有道理,因为源码中的一些方法或者思想确实能够让我们跳出自己的思维模式,拓展我们的编程思维。下面我们就来浅析jQuery源码部分知识。jQuery源码差不多有上万行代码了,下面是其各部分的架构(在博客园上拷贝的一张图):Paste_Image.png**(一)、总体框架 **首先我们来总体看下jquery的代码:(function(window, undefined) { // jQuery 代码})(window);通过上面我们很容易看到jQuery的实现方法都被包含在立即执行函数中了,这样我们在引用jQuery时就马上执行了,并且jQuery里面的变量不会污染外界的变量。(对于单独暴露出的$及jQuery这两个参数其也做了防冲突处理这个我们在下一点将会谈到)。其中我们还看到在这个立即执行函数中在外界传了一个“wi
-
【深入浅出jQuery】源码浅析--整体架构最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美。其结构明晰,高内聚、低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷、渐进增强)优雅的处理能力以及 Ajax 等方面周到而强大的定制功能无不令人惊叹。另外,阅读源码让我接触到了大量底层的知识。对原生JS 、框架设计、代码优化有了全新的认识,接下来将会写一系列关于 jQuery 解析的文章。我在 github 上关于 jQuery 源码的全文注解,感兴趣的可以围观一下。jQuery v1.10.2 源码注解 。系列第二篇:【深入浅出jQuery】源码浅析2--奇技淫巧 网上已经有很多解读 jQuery 源码的文章了,作为系列开篇的第一篇,思前想去起了个【深入浅出jQuery】的标题,资历尚浅,无法对 jQuery 分析的头头是道,但是 jQuery 源码当中确实有着大量巧妙的设计,不同层次水平的阅读者都能有收获,所以打算厚着脸皮将自己从中学到的一些知识点共享出来。打
-
Jquery源码学习(第二天)学习对象:jquery-2.0.3.js 学习方式:视频教程+本地调试 学习目标:jquery源码,累计代码行数8829行,功能模块分割如下 (21,94)行 定义了一些变量和函数,如 jQuery = function(){}; (96,283)行 给JQ对象添加方法和属性; (285,347)行 extend:JQ的继承方法; (349,817)行 jQuery.extend():扩展一些工具方法; (877,2856)行 Sizzle:复杂选择器的实现(Sizzle可以单独使用到项目中); (2880,3042)行 Callbacks:回调对象,作用:对函数的统一管理; (3
jquery 源码相关课程
jquery 源码相关教程
- jQuery jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript.(jQuery 官方介绍)
- 2. 引入 jQuery jQuery 可以直接从官网下载,也可以用 npm 安装,也可以使用 bower 等这些包管理工具,本篇幅采用 CDN 的形式引入,本身 jQuery 就是一个 .js 文件,只需引入就能使用。<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>引入之后就可以在全局下通过 jQuery 或者 $ 调用 jQuery 了。<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script> console.log($); console.log(jQuery); console.log($ === jQuery); // 输出:true</script>
- 1.引入 Jquery 因为我们使用的 Ajax 方法是 jQuery 提供的,因此我们需要在页面中引入 jQuery 脚本。<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.js"></script>Tips: 注意 jQuery 脚本要放在使用到 jQuery 的脚本之前,这样才可以在我们的页面中愉快的玩耍~
- 1.jQuery Ajax 这个技术在前面章节有独立章节进行讲解。事实上,$.ajax 是基于原生 XMLHttpRequest 进行了封装,并且提供了一套高度统一的设计和编程接口。在我们的代码中,我们一般都这样写:$.ajax({ method: 'POST', url: url, data: data, success: function () {}, error: function () {}});或者结合 deferred 的写法:$.ajax({ url: url, method: 'GET', data : data}).done(data => { // code}).fail(err => { // code})不吹不黑,jQuery 提供的这一套 Ajax 工具方法真的非常优秀,并且经历了这么多年的打磨,其稳定性、成熟度自然不必多言。关于 jQuery 的 Ajax 工具方法的优点,在前面章节已经讲过。至少从使用体验上来讲,简单易用,功能齐全,以至于我身边至今依然有很多开发者在使用这一套工具函数。然而,随着技术的发展,jQuery 也逐步走向一个衰弱的过程。越来越多的前端开发者开始使用诸如 Angular、React 和 Vue 这样的新型框架。想像一下,如果我们在一个基本用不到 jQuery 的技术中进行前端开发,为了要使用 jQuery 的 Ajax 相关方法而强行引入整个 jQuery,这显然是不现实也不可取的。在更新的技术中,我们将寻求体积更小,更为先进的类库。
- 1. 什么是 jQuery jQuery 是一个使用 JavaScript 编写的库,可以让开发者用更少的代码来完成业务逻辑。许多年前前端的技术没有现在这么丰富,jQuery 和 JavaScript 也会被经常称为两个技术,因为使用 jQuery 完全可以替代掉使用原生的 JavaScript 操作 DOM、处理动画、处理 AJAX 等,这让两者之间的概念变得模糊。可以对比一下删除一个节点的操作:// 使用JavaScriptvar el = document.getElementById('element');el.parentNode.removeChild(el);// 使用 jQuery$('#element').remove();两者的区别一比较就出来了,jQuery 封装一层 DOM 操作,将原生的 DOM 方法向上层抽象,提供了一套更简洁的 API 来操作 DOM,同时也针对各个浏览器做了兼容性处理,如事件对象、事件的绑定方式等。
- 3. 使用 jQuery jQuery 使用 $ 或者 jQuery 来生成一个 jQuery 对象,这里统一使用 $。1167$ 可以接受一个 CSS 规范的选择器,用来选择元素,html 方法相当于设置 DOM 节点的 innerHTML 属性。在 DOM 相关章节有提到,如果使用 querySelector 来选择节点,碰到节点不存在的情况下,会返回 null,这样就需要一层判断, jQuery 已经处理好了这些情况。<div>DOM节点</div><div class="element"></div><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script> $('.ele').html('<p>这里是用 jQuery 插入的 HTML</p>'); console.log('不会影响正常程序执行');</script>其可以接受的参数不仅仅是 CSS 选择器,也可以是一个原生 DOM 节点,一段 HTML 字符串等。jQuery 选择 $ 作为作为入口名称,一部分是因为简单,原生 DOM 提供的选择 DOM 节点的方法都是一长串,另一个原因是 $ 本身的发音 dollar 和 DOM 的发音接近。
jquery 源码相关搜索
-
j2ee
j2ee是什么
jar格式
java
java api
java applet
java c
java jdk
java list
java map
java script
java se
java socket
java swing
java switch
java web
java xml
java 程序设计
java 多线程
java 环境变量