jQuery框架源码解读】的更多相关文章

1.jQuery 1.9.1 parseJSON: function( data ) { // Attempt to parse using the native JSON parser first if ( window.JSON && window.JSON.parse ) { return window.JSON.parse( data ); } if ( data === null ) { return data; } if ( typeof data === "stri…
一.参数标记 /* * once: 确保回调列表仅只fire一次 * unique: 在执行add操作中,确保回调列表中不存在重复的回调 * stopOnFalse: 当执行回调返回值为false,则终止回调队列的执行 * momery: 记录上一次fire时的参数,并在add中传递给fire和执行fire,执行时firingIndex为上一次fire时的firingLength */ 二.源码解读分析 var optionsCache = {}, // Used for splitting o…
前面提到在SSCLI环境里运行.NET程序的时候,执行的命令类似java程序的执行过程,即通过clix程序解释执行.net程序.这个过程看起来跟在windows环境下执行.net程序表面上看起来不一样 – Windows环境下的CLR直接执行.net程序文件即可执行,其实内部运作机制是一样的,在后文我会讲解到. 首先我们先来解读下clix的源码,其源码位置位于:clr\src\tools\clix\clix.cpp,入口的main函数在clix.cpp:157行. 刚开始的159 ~ 266行都…
前文演示了编译SSCLI最简便的方法(在Windows下): 在“Visual Studio 2005 Command Prompt”下,进入SSCLI的根目录: 运行 env.bat 脚本准备环境: 运行 buildall.cmd 脚本开始编译过程. env.bat设置了当前SSCLI的运行环境,命令的语法是:`env [option]`,其中[option]可以是debug.checked和free,各个环境选项说明如下表: 选项 说明 debug 关闭代码优化设置,启用调试用代码(一般是通…
toggleClass: function( value, stateVal ) { var type = typeof value;//值类型 if ( typeof stateVal === "boolean" && type === "string" ) {//如果第二个参数为bool值 return stateVal ? this.addClass( value ) : this.removeClass( value );//如果第二个参为t…
我们知道,$().attr()实质上是内部调用了jQuery.access方法,在调用时jQuery.attr作为回调传入.在通过种种判断(参看jQuery.access()方法)之后,取值和赋值最后调用了这个jQuery.attr方法. 所以,关键是看jQuery.attr这里怎么走了~~ 源码如下: attr: function( elem, name, value ) { var hooks, ret, nType = elem.nodeType; //如果elem不存在,或者是文本.注释…
在SSCLI里附带了两个示例编译器源码,用来演示CLR整个架构的弹性,一个是简化版的lisp编译器,一个是简化版的C编译器.lisp在国内用的少,因此这里我们主要看看C编译器的源码,源码位置是:\sscli20\samples\compilers\myc. 为了简单起见,该编译器实现了C语言的子集,如只支持 int  和void 类型,可以声明静态和局部变量,但是局部变量只能在函数的顶部声明,只支持 if-else.while和for等语句.编译器将C程序编译成MSIL语言,再调用IL编译器产生…
阅读源码一个比较快的手段就是在调试器里阅读,这样可以在实际运行SSCLI的过程中,通过堆栈跟踪的方式查看完整的程序执行路径. 当在SSCLI环境里执行一个托管程序的时候,堆栈上通常有托管和非托管代码同时在执行.因此在SSCLI里也支持下面几种调试场景: 调试托管程序:在SSCLI里自带了一个托管调试程序,cordbg.exe.跟调试普通.net程序不同,目前还无法在Visual Studio里调试SSCLI环境下的托管程序,在后面有时间的时候,我们会看一下如何在Visual Studio里添加调…
微软发布了CLR 2.0的源码,这个源码是可以直接在freebsd和windows环境下编译及运行的,请在微软shared source cli(http://www.microsoft.com/en-us/download/details.aspx?id=4917)链接处下载,并用7zip等工具解压,以后简称sscli – 即Shared Source CLI. 解压后,根目录下有readfirst.html文件,里面说明了该开源版本里包含的功能列表: 泛型的实现: 轻量级的代码生成: 委托的…
基础编程风格 新建 test.html  和 test.js和 main.js和 无论哪种顺序 <body> <script src="/Sandeep/js/jquery.min.js"></script> <script src="/Sandeep/js/main.js"></script> <script src="/Sandeep/js/test.js"></s…