司徒正美

Results 147 issues of 司徒正美

define("mvvm", "$event,$css,$attr".split(","), function($) { var prefix = "ms-"; var avalon = $.avalon = { models: {}, filters: { uppercase: function(str) { return str.toUpperCase() }, lowercase: function(str) { return str.toLowerCase(); },...

http://www.cnblogs.com/alephsoul-alephsoul/archive/2012/09/26/2704707.html

From Firebug console in Firefox 3.6.3 >>> 100==99.99 false >>> 100==99.999 false >>> 100==99.9999 false >>> 100==99.99999 false >>> 100==99.999999 false >>> 100==99.9999999 false >>> 100==99.99999999 false >>> 100==99.999999999 false...

依赖链是MVVM的核心之一,由$.observable, $.observableArray与$.computed组成。它们都返回一种叫field的可读写函数,来操作用户的数据!

早在 v2时,它就加入了对旋转与放大的支持,但由于数学知识的短板一直搞出个矩阵类。而矩阵类是解决IE transform 2D的关键。从上星期决定升级CSS模块开始,就想方设法引进一个矩进类。 个人一开始很看重两个框架 Sylvester.js ,与matrix.js。但它们都太大了,最终还是决定自己搞: function toFixed(d){ return d > -0.0000001 && d < 0.0000001 ? 0 : /e/.test(d+"") ? d.toFixed(7) : d } function rad(value) { if(isFinite(value))...

此方法是对应jQuery data模块的dataAttr私有方法,将单一的字符串数据转换成多元化的数据。 问题是jQuery内部是使用$.parseJSON进行转换,这就要求对象的键名一定要用双引号括起来相当麻烦。 parseData的改进是,直接使用eval("0,"+data)进行转换,这样一来保存对象就非常简单了,同时我们还可以保存时间对象,函数,正则,NaN等等,非常方便 parseData的加入,让mass Framework现在有五个parseXXX方法了,依次是parseJSON, parseJS,parseXML,parseHTML,parseData

更新你的模块,加补丁,FIX BUG或新特征什么的 改变package.json中的版本号 打开控制台,定位到本模块的目录下,输入npm publish

``` javascript //重写mmRouter中的route方法 avalon.router.route = function (method, path, query, options) { path = path.trim() var states = this.routingTable[method] //el为一个个状态对象,状态对象的callback总是返回一个Promise for (var i = 0, el; el = states[i++]; ) {...

``` javascript TODO supply a title var rootState = {} var Router = function() { this.states = { "": rootState } this.currentState = "" this.stateArray = [] } Router.prototype =...

现在路由器遇到一个问题, 就是切换后某些VM的数据丢失 因为有些VM是定义在子页面的. mmState.state("xxxx",{ }) 子页面是通过路由器切换 这些VM应该只初始化一次 并且应该与用户交互逻辑分离 换言之,这些VM与普通JS分别在不同的函数内 普通JS所在的函数应该能拿到它们想要的VM,或者说通过依赖注入 当页面再切换到其他页面时, 应该做一些后继处理 比如, 页面上的ms-widget生成的VM,它们的数据应该保存起来 当页面再切换回来, VM不用再重新创建,它们只需要再扫描(mmState不会保存这些子页面的DOM节点, 这是在移动端出于性能考虑, 只保存字符器) 然后子页面的ms-widget 再重新赋予之前的数据 这样一来, 就能还原所有之前的状态