Ruby's Louvre

每天学习一点点算法

导航

上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 125 下一页

2014年3月25日 #

html标签对应的英文原文

摘要: 标签对应英文说明 / 注释 document type 文档类型 ... 阅读全文

posted @ 2014-03-25 09:02 司徒正美 阅读(2340) 评论(2) 推荐(2) 编辑

迷你MVVM框架 avalonjs 实现上的几个难点

摘要: 经过两个星期的性能优化,avalon终于实现在一个页面绑定达到上万个的时候不卡顿的目标(angular的限制是2000)。现在稍作休息,总结一下avalon遇到的一些难题。首先是如何监控的问题。所有MVVM要将VM中的属性与视图中的绑定属性关联起来大抵有如下三种方式:angular是对函数体取toString进行预编译,将里面的赋值语句,取值语句替换为set,get方法,然后通过特定方法进行脏检测触发,或手动触发;ko是对VM的属性用监控函数外包一层,全事件驱动触发;avalon是通过Object.defineProperties重写内部set,get函数,全事件驱动触发。此外还有emberj 阅读全文

posted @ 2014-03-25 08:59 司徒正美 阅读(4679) 评论(5) 推荐(10) 编辑

2014年3月20日 #

firebug,chrome调试工具的使用

摘要: ​http://ued.taobao.org/blog/?p=5534chrome调试http://www.cnblogs.com/QLeelulu/archive/2011/08/28/2156402.htmlchrome的调试https://developers.google.com/chrome-developer-tools/docs/commandline-api chrome console 命令详解http://www.ruanyifeng.com/blog/2008/06/firebug_tutorial.htmlFirebug入门指南http://www.ruanyifeng 阅读全文

posted @ 2014-03-20 10:15 司徒正美 阅读(3891) 评论(0) 推荐(3) 编辑

2014年3月18日 #

迷你MVVM框架 avalonjs 1.2.4发布

摘要: 这段时间一直忙于建立avalon的单元测试,与重构官网。对avalon的更新都是来自公司内部的需求,性能优化与一些BUG修复。添加大量调试日志。重构shimController,以提高性能。createWithProxy, createEachProxy生成的代理VM的$id符合一定的格式,方便在parseExpr中生成的函数能共享。重构parseExpr,减少表达式转换成求值函数时要经过所有分支数,提高性能ms-if 实现按需加载。fix 内部函数iteratorCallback 传参 BUG,这与data-each-rendered, data-with-rendered, data-re 阅读全文

posted @ 2014-03-18 16:05 司徒正美 阅读(1052) 评论(0) 推荐(0) 编辑

使用特殊的元素作为扫描的起点元素

摘要: var fragment = avalon.parseHTML("") alert(fragment.firstChild.tagName + "!") alert(fragment.lastChild.tagName) alert(fragment.lastChild === fragment.firstChild) alert(fragment.lastChild.innerHTML) 阅读全文

posted @ 2014-03-18 10:26 司徒正美 阅读(1007) 评论(0) 推荐(0) 编辑

2014年3月17日 #

javascript 模拟选择下拉框的某一个option元素的效果

摘要: 需要在单元测试模拟它,百度谷歌了好久都没有。后来认真想想,还是找到办法了。因为我们手动交互某一行为,首先是让它的某些属性发生变化,其次是让它触发某事件。想明白这一点就简单了。让属性发生变化,当然是改动其固有属性,因此 setAttribute(aaa,bbb)便出局了,因此它是用来设置自定义属性(IE678另谈,那是怪胎)。想触发事件,我们可以用fireEvent或dispathEvent,阿狸从雅虎的YUI搞了一个event-simulate,想得更加周全,大家想深入可以参考一下。下面就是我的成果了: ... 阅读全文

posted @ 2014-03-17 17:37 司徒正美 阅读(3551) 评论(0) 推荐(1) 编辑

2014年3月13日 #

迷你MVVM框架avalon在兼容旧式IE做的努力

摘要: 很多时候,写代码就像砌砖头,只要我们不关心盖楼的原因、建筑的原理、土木工程基础和工程经验,就算我们砌了100栋高楼,我们也就只是一个砌砖工人,永远也成为不了一个工程师,更别说建筑师了。而那些包工头也只会把我们当成劳动力罢了。——左耳朵耗子avalon在兼容旧式IE上做了大量工作,从而让它更接地气,完美地运行于国内的各种奇葩浏览器中。首先是Object.defineProperties的模拟,正因为有这东西,才能让avalon是纯事件驱动地同步视图,而不用脏检测,从而获得更高的性能。 //IE6-8使用VBScript类的set get语句实现 if (!defineProperties ... 阅读全文

posted @ 2014-03-13 11:40 司徒正美 阅读(5637) 评论(6) 推荐(9) 编辑

2014年3月4日 #

knockout的监控数组实现

摘要: knockout应该是博客园群体中使用最广的MVVM框架,但鲜有介绍其监控数组的实现。最近试图升级avalon的监控数组,决定好好研究它一番,看有没有可借鉴之处。 ko.observableArray = function(initialValues) { initialValues = initialValues || []; if (typeof initialValues != 'object' || !('length' in initialValues)) thro... 阅读全文

posted @ 2014-03-04 09:43 司徒正美 阅读(3110) 评论(3) 推荐(3) 编辑

2014年3月3日 #

filterHTML

摘要: function filterHTML(source) { return !source ? "" : source.replace(/]*>/g, "").replace(/[ | ]*\n/g, "\n"). replace(/\n[\s| | ]*\r/g, "\n").replace(//ig, "")} 阅读全文

posted @ 2014-03-03 16:16 司徒正美 阅读(1950) 评论(0) 推荐(0) 编辑

2014年3月2日 #

手机上不了网

摘要: http://bbs.imobile.com.cn/thread-tid-9418170.html有个办法让小偷也用不了,嘿嘿!查看手机的序列号,只需键入* # 0 6 #, 15位序列号会出现在手机屏幕上,全世界的每一台手机都有一个独一无二的序列号,把这个序列号记录下来并保存好。有一天如果你的手机不幸被偷了,打电话给手机提供商,并提供你的手机序列号,他们会帮你把手机屏蔽,这样即使小偷换了SIM卡,仍然无法使用,你的手机对小偷来说变得一无是处。如果全世界每个手机持有者都这么做,那么偷手机就没有意义了。在澳洲,警方甚至建立了一个被盗手机数据库,如果你的手机被找到了,就可以归还给你了。 阅读全文

posted @ 2014-03-02 17:08 司徒正美 阅读(1177) 评论(2) 推荐(1) 编辑

上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 125 下一页