摘要: 拨开jQuery的面纱,最近了解了下jQuery源码整体框架。主要包括:(1) jQuery 核心模块(2) sizzle 选择器引擎(3) Deferred 异步队列(4) Support 浏览器测试(5) Data 数据缓存(6) queue 队列(7) event 事件处理(8) Dom 操作(9) CSS 操作(10)Ajax实现(11)动画效果(12)位置整个jQuery源码最外层是一个大的闭包:(function(window, undefined){})(window);它的实质就是将window参数传入一个匿名函数中执行,保证了在函数体内创建的变量不会影响到应用方的代码。其中参 阅读全文
posted @ 2013-10-18 22:17 ansur 阅读(229) 评论(0) 推荐(0)
摘要: 对于Dom元素显示和隐藏的操作,jQuery提供了比较方便的函数,我们也经常使用:1. show() : 显示Dom元素2. hide() : 隐藏Dom元素3. toggle() : 改变Dom元素的显示状态,如果当前是显示状态函数运行后则会隐藏也曾想过这三个函数的实现原理,如果以为是简单的设置样式,改变display属性的值设置为block或是none。那就错了,看了下jQuery2.0.3的源码,了解了这三个函数的实现原理,其实实现的逻辑还有点小复杂,下面来介绍下具体实现:1、 数据存储Data(1) 概述为什么要说数据存储呢,和Dom元素的隐藏和显示好像没有关系。其实jQuery用数据 阅读全文
posted @ 2013-09-28 12:52 ansur 阅读(1627) 评论(0) 推荐(0)
摘要: Touch组件的实现主要解决了在pc端和移动端拖拽元素的功能。PC端:依靠事件: mousedown,mousemove,mouseup的鼠标事件。过程:1. mousedown事件中记录当前元素位置信息,对元素绑定mousemove,mouseup事件。2. mousemove事件函数,在移动元素的时候获取当前鼠标的位置来改变元素位置属性。其中可以计算获取移动时x,y方向最大的值,从而给元素设置一个移动范围。3. mouseup事件中主要处理取消事件绑定等操作。移动端:依靠事件: touchstart,touchmove,touchend,touchcancel事件过程:1. touchst 阅读全文
posted @ 2013-09-28 12:47 ansur 阅读(628) 评论(2) 推荐(0)