7.页面js调用jQuery后,对其返回对象的分析
当引导完jQuery的js文件,jQuery在他的js文件代码中,利用js匿名函数运行机制,将变量名为jQuery的变量暴露给了整个页面,是个全局性变量。该变量指向一个function,方法如下:
var jQuery = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init( selector, context, rootjQuery );
},
该方法调用jQuery.fn.init方法,jQuery.fn.init方法返回一个this,这个this指向调用init方法的对象(即jQuery.fn),最终返回给页面的是jQuery.fn对象。jQuery.fn包含了自定义的一些方法,还包含了根据selector找到的html元素构成的数组。jQuery.fn对象向页面屏蔽了它的父类jQuery的内部方法,jQuery.fn的一些方法会调用父类jQuery的方法去完成主要逻辑。
6.jquery each方法
each 方法会将循环当前jQuery.fn对象中html元素数组,将每个数组对象作为callback的第一个参数(即callback中this指向的对象),将数组索引值和每个数组对象作为第二、第三个参数传给callback(即callback中传入参数的第一、第二个参数)。
5.jQuery.sheet 插件分析
jquery.sheet.js,完整项目参见附件:editor-0412.zip
to-do:
公式内容的转换原理
done:
主要流程图
指定json或html输入源,将其传给jQuery.sheet插件进行解析
在创建table的同时,会建立对应的一个三维数组,结构如下:
jS.spreadsheets[sheet][row][col] = {
formula: formula,
value: value,
calcCount: (calcCount ? calcCount : 0),
calcLast: (calcLast ? calcLast : -1)
};
切换单元格或标签页时,会调用calc方法对单元格全部进行重新赋值动作,calc调用updateCellValue方法,updateCellValue方法会把三维数组中的值付给对应table中的单元格,主要目的是完成公式字面内容到公式实际效果内容的转换。
在table中某一个单元格输入内容时,与jS.obj.formula()联动。jS.obj.formula()位于表格编辑区与工具栏之间的长形输入框。这个动作在cellEditDone方法中完成。
自己扩展插件功能,在给单元格赋值时,需要向table的td和对应的三维数组同时赋值。以便在切换单元格或标签页时,保证table的单元格内容正常显示。
4. jQuery脚本文件的语法分析
4.1 jQuery的加载执行
(function(){})();
针对上面的这句代码,前面的()就是一个求值,括号内的值类型是function。 js里面函数也是变量。 函数变量后面加括号,当然就是执行函数了。按照ecma 3.0规范,函数也是一个对象,而“()”(写在函数后面)则是运算符,表示“执行”。
3. jQuery中$的处理
$符号已经在jQuery中被重新赋予了新的含义,它指向了jQuery对象。参见第8373行,
window.jQuery = window.$ = jQuery;
jQuery会在页面上生成全局的jQuery函数对象,可以向jQuery的构造器方法中传入适当参数去执行。参数可以是一个function对象、字符串形式的页面元素的选择条件值等等。
2. jQuery的扩展接口
jQuery 1.5.2实现自定义扩展接口的逻辑处理代码在第309行的函数中,
jQuery.extend = jQuery.fn.extend = function() {
...
}
1. tablesorter plugin
如果不传排序参数, tablesorter 默认所有被排序内容都是按照文本内容进行排序.
分享到:
相关推荐
**jQuery 学习笔记总结** jQuery 是一个广泛使用的 JavaScript 库,它简化了网页文档对象模型(DOM)操作、事件处理、动画制作以及Ajax交互。本篇笔记将深入探讨 jQuery 的核心概念,包括选择器、常用方法以及在...
达*JQuery课堂笔记,JQuery是前端开发人员必知的库,熟练掌握JQuery能大大简化代码提高开发效率
"myjquerytest"可能是实践项目的一部分,其中可能包含了一些插件的集成和自定义开发,帮助你理解如何在实际项目中应用jQuery。 总的来说,《韩顺平jQuery学习笔记及练习》这套资料全面覆盖了jQuery的基础知识和实践...
**jQuery学习笔记(一)** 在深入探讨jQuery之前,我们首先要理解什么是jQuery。jQuery是一个高效、易用且功能丰富的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作和Ajax交互等任务。由John Resig在2006...
### jQuery完全笔记知识点概述 #### 1. jQuery概述 jQuery是一个快速、小型且功能丰富的JavaScript库,它简化了HTML文档遍历、事件处理、动画和Ajax交互。通过使用jQuery,可以更方便地在网页中操作文档对象、选择...
JavaScript 和 jQuery 是两种非常重要的前端开发技术,它们在构建交互式网页和动态应用程序中起着核心作用。这里,我们有针对这两个主题的学习笔记和参考资料,包括JavaScript培训、jQuery API、JavaScript基础、...
掌握这些基本概念和方法后,开发者可以更高效地使用jQuery进行网页开发,减少与DOM交互的复杂性,提高代码的可读性和可维护性。jQuery还提供了丰富的插件和扩展,使得功能更加多样,满足各种复杂的前端需求。在实际...
**jQuery学习笔记** jQuery,作为一个轻量级的JavaScript库,极大地简化了JavaScript的DOM操作、事件处理、动画设计以及Ajax交互。这篇学习笔记将深入探讨jQuery的核心概念和实用技巧,帮助初学者快速上手。 ## 一...
在JavaScript的世界里,jQuery是一个非常流行的库,它简化了DOM操作、事件处理和动画效果等任务。...在开发过程中,遵循jQuery的最佳实践,保持代码简洁和可维护性,你的插件将会受到广大开发者欢迎。
《jQuery学习笔记详解》 jQuery 是一款强大的JavaScript库,它极大地...学习jQuery,不仅可以提高开发效率,还能让你的网页交互更加流畅、美观。在学习过程中,结合实践不断探索和积累,才能真正掌握这一强大的工具。
### Ajax和jQuery学习笔记 #### 一、Ajax基础与原理 **1.1 什么是Ajax?** Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种用来创建快速动态网页的技术,通过在后台与服务器进行少量数据...
### JQuery学习笔记(技术文档) #### 一、JQuery能做什么? JQuery 是一款轻量级的 JavaScript 库,它的设计宗旨是“write less, do more”,即“写得更少,做得更多”。通过JQuery,可以实现以下功能: 1. **...
### JQuery 1.3 笔记知识点总结 #### 属性操作 (Attribute) 1. **添加样式** - `$("p").addClass("css类名")`: 给指定的`<p>`元素添加一个CSS类名定义的样式。 2. **添加属性/值** - `$("img").attr({"属性...
《jQuery学习笔记详解》 jQuery,作为一款广泛应用于Web开发的JavaScript库,以其简洁的API、强大的功能和广泛的社区支持,极大地...希望这篇笔记能成为你探索jQuery世界的向导,助你在Web开发的道路上更加得心应手。
《jQuery学习笔记详解》 jQuery,作为一款广泛应用于前端开发的JavaScript库,因其简洁的语法和强大的功能,深受开发者喜爱。这份"jQuery学习笔记.rar"包含的资源旨在帮助你全面掌握jQuery,无论你是初学者还是有...
这个笔记主要涵盖jQuery UI的基本概念、核心组件、使用方法以及在实际项目中的应用。 ### 1. jQuery UI 的组成 jQuery UI 包含了以下几大部分: - **Widgets(组件)**:如对话框(Dialog)、日期选择器(Datepicker...
《jQuery读书笔记》 在深入理解JavaScript库的过程中,jQuery无疑是一个绕不开的重要角色。这篇读书笔记将基于jQuery的API文档,结合实际应用,探讨其核心功能和使用技巧,旨在帮助读者更好地掌握这一强大的工具。 ...