Ruby's Louvre

每天学习一点点算法

导航

上一页 1 ··· 67 68 69 70 71 72 73 74 75 ··· 125 下一页

2011年8月23日 #

mass Framework css模块

摘要: 这里实际包含两个文件,在IE9中,它完全支持W3C那种精确获取样式的API,因此无需使用currentStyle与runtimeStyle,因此对于旧式IE的兼容单独放到一个JS文件中。css.js//=========================================// 样式操作模块 by 司徒正美 2011.8.23//=========================================(function(global,DOC){ var dom = global[DOC.URL.replace(/(#.+|\W)/g,'')], deps = 阅读全文

posted @ 2011-08-23 23:05 司徒正美 阅读(2136) 评论(2) 推荐(1) 编辑

判定是否使用输入法

摘要: 文本域与文本区在打开中文输入法时,所有keyCode与which的取值都不对,在opera下总为197,在其他浏览器下总为229。<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>dom Framework</title> <script src="/neo/dom.js"></script> <script> dom.require("ready,event" 阅读全文

posted @ 2011-08-23 20:53 司徒正美 阅读(1545) 评论(1) 推荐(0) 编辑

2011年8月22日 #

requestAnimationFrame 动画接口

摘要: 传统的 javascript 动画无非就是用setInterval函数来实现,这对于简单或对流畅性要求不高时不会有什么问题,但现在随着对用户体验的关注度不断提高,对动画的复杂程度和流畅性都有了更高的要求,传统动画显得捉襟见肘了。 为解决此问题浏览器提供了一个统一帧管理、提供监听帧的API,即requestAnimationFrame 优势: 对于一个侦中对DOM的所有操作,只进行一次Layout和Paint。 如果发生动画的元素被隐藏了,那么就不再去Paint。 使用方法: 调用requestAnimationFrame函数,传递一个callback参数,则在下一个动画帧时... 阅读全文

posted @ 2011-08-22 17:24 司徒正美 阅读(15699) 评论(3) 推荐(4) 编辑

使用requestAnimationFrame更好的实现javascript动画(转)

摘要: 一直以来,JavaScript的动画都是通过定时器和间隔来实现的。虽然使用CSS transitions 和 animations使Web开发实现动画更加方便,但多年来以JavaScript为基础来实现动画却很少有所改变。直到Firefox 4的发布,才带来了第一种对JavaScript动画的改善的方法。但要充分认识改善,这有利于帮助我们了解web动画是如何演变改进的。定时器Timer用于创建动画的第一个模式是使用链式setTimeout()调用。在Netscape 3′s hayday的很长一段时期,开发者都记得一种在网络上随处可见的固定式最新行情状态栏,通常它类似于这样: (fu... 阅读全文

posted @ 2011-08-22 09:10 司徒正美 阅读(11513) 评论(8) 推荐(0) 编辑

我的模块加载系统 v9(附例子下载)

摘要: 模块加载系统是我框架的核心模块的一部分,与domReady彻底地整合在一起。当然核心模块还提供了其他常用方法,如数组化,类型判定,简单的事件绑定...本版本有以下改进: HTML5 History API带来颖新的“改变URL不刷新页面”技术,可能会让我的其核心模块找不到我的动态命名空间(DOC.URL.replace(/(\W|(#.+))/g,'')),因此添加onpopstate事件来同步命名空间。 为装载模块而临时生成的script节点,不会再让opera不再访问readyState属性,防止在iframe注入script中抛"getting readySt. 阅读全文

posted @ 2011-08-22 09:04 司徒正美 阅读(2713) 评论(0) 推荐(0) 编辑

2011年8月21日 #

mass Framework event模块

摘要: 此模块此用于屏蔽DOM事件的浏览器差异的,并提供强大的事件代理机制(delegate,undelegate,live,die)://==========================================// 事件模块 by 司徒正美 2011.8.21//==========================================(function(global,DOC){ var dom = global[DOC.URL.replace(/(#.+|\W)/g,'')]; dom.define("event", "emitt 阅读全文

posted @ 2011-08-21 13:14 司徒正美 阅读(1131) 评论(0) 推荐(0) 编辑

2011年8月19日 #

javascript String.indexOf实现

摘要: 群里abcd提出问题,现在有以下三个实现,欢迎大家参与(注意,为了兼容IE6,不能使用str[i],要用str.charAt(i);不能使用slice,replace等原生函数):GrayZhang的实现String.prototype.substring = function(start, length) { var array = []; for (var i = start; i 我的实现://by 司徒正美 2011.8.18String.prototype.indexOf = function(sub){ var a = sub.charAt(0),an = sub.length,n 阅读全文

posted @ 2011-08-19 09:00 司徒正美 阅读(5326) 评论(7) 推荐(2) 编辑

2011年8月16日 #

mass Framework lang模块 v2

摘要: 正如dom实例对节集进行包装以实现对节点的链式操作,本模块也对javascript的最基本数据结构进行包装实现链式操作,并通过一层皮囊,我们可以大肆扩展,绕过原型就能享受原型扩展的好处。为了便捷的获取返回值,每个方法都有一个孪生兄弟zzzzX,如forEach对应forEachX方法,forEach是用于取得返回值,而forEachX则用于返回链式对象。除此之外,本模块也提供了诸如isPlainObject,isFunction,isString,isArray,isNative,isEmptyObject,isArrayLike,format,tag,range,quote,parseJS, 阅读全文

posted @ 2011-08-16 10:39 司徒正美 阅读(1865) 评论(0) 推荐(1) 编辑

2011年8月15日 #

mass Framework attr模块

摘要: 属性在这里只是一个统称,它对应两个术语attribute与property。attribute是指用户通过setAttribute设置的自定义属性,其值只能是字符串,如果没有显式定义,用getAttribute取值为undefined。property是指元素固有属性,像title, className,tabIndex, src, checked等等。这些属性的值可以是五花八门,如className总是字符串,tabIndex总是数字(它只限表单元素与个别能获取焦点的元素),表单元素的form属性总是指向其外围的表单对象(当然如果它没有放在form标签之内是不存在的), checked, d 阅读全文

posted @ 2011-08-15 10:16 司徒正美 阅读(1801) 评论(1) 推荐(1) 编辑

2011年8月8日 #

我的模块加载系统 v8

摘要: 模块加载系统是我框架的核心模块的一部分,与domReady彻底地整合在一起。当然核心模块还提供了其他常用方法,如数组化,类型判定,简单的事件绑定...本版本有以下改进: 将define的大部分转交require去处理,define只处理参数。 将内部两个处理依赖关系的对象status与checks改进为轻捷的dom["@modules"]与names。 改进resolveCallbacks里面判定某一个模块的所有依赖是否都已加载成功的逻辑,让其更加高效。 增强domReady传参的判定,原来是使用简单的typeof expr == "functi... 阅读全文

posted @ 2011-08-08 09:59 司徒正美 阅读(2681) 评论(1) 推荐(2) 编辑

上一页 1 ··· 67 68 69 70 71 72 73 74 75 ··· 125 下一页