Ruby's Louvre

每天学习一点点算法

导航

上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 125 下一页

2013年7月11日 #

WinJS.Binding.List与kendo.data.ObservableArray

摘要: avalon0.8一个最大目标是实现对数组的深层监控,可是面临的困难重重,至今还没有什么起色。于是看一下其他两个MVVM框架的做法(knockout, emberjs, angular都不能监听家庭数组元素的属性改动)WinJS.Binding.List的详细文档可见这里我写了一些测试示例,发现它是生成一个新对象来处理,而且不是数组实例,也不是类数组对象,用起点有点别扭。 var object = new WinJS.Binding.List([1, 2, 3, 5, {a: 4}]); console.log(object) ... 阅读全文

posted @ 2013-07-11 09:42 司徒正美 阅读(1239) 评论(0) 推荐(0) 编辑

2013年7月10日 #

迷你MVVM框架 avalonjs 0.84发布

摘要: 本版本只要做了如下改进 重构ui绑定 fix scanTag bug ms-include 的值必须不为空值,否则不做任何操作。 阅读全文

posted @ 2013-07-10 21:21 司徒正美 阅读(1142) 评论(0) 推荐(1) 编辑

迷你MVVM框架 avalonjs 入门教程

摘要: 新官网请不要无视这里,这里都是链接,可以点的 OniUI组件库 学习教程 视频教程: 地址1 地址2 关于AvalonJs 开始的例子 扫描 视图模型 数据模型 绑定 作用域绑定(ms-controller, ms-important) 忽略扫描绑定(ms-skip) 模板绑定(ms-include 阅读全文

posted @ 2013-07-10 10:52 司徒正美 阅读(239999) 评论(119) 推荐(48) 编辑

2013年7月9日 #

居中百分比宽高的元素

摘要: 如果知道该元素确切的宽高,居中它比较容易,可以参考此文 ,top 和 left 设成 50%,负 margin 分别设置该元素宽,高的一半。如果明确知道该元素的宽高,用此法居中很容易,如果它的宽高是百分比呢?你可能认为负的百分比 margin 可以搞定,它适用于水平的 margin,但是 margin 基于宽度(垂直 margin 也是)(译者注:margin 是百分比的话,跟此元素的包含块的宽度有关,见规范),因此当你用负的 top margin 时,失败了。有个小技巧 ,用一个“ghost”伪元素(看不见的伪元素)和 inline-block / vertical-align 可以搞定居中 阅读全文

posted @ 2013-07-09 11:36 司徒正美 阅读(1818) 评论(2) 推荐(0) 编辑

2013年7月8日 #

迷你MVVM框架 avalonjs 0.83发布

摘要: 本版本做了如下改进: 重构计算属性, 这是@soom提出的BUG,发现计算属性被某个监控属性向上驱动更新自己时,不会解发$watch回调。详见这里。 强化ms-bind绑定,当第一次扫描时也会执行它的回调,以后这个值改动时,和以前一样执行这回调。 详见这里 。 修正ms-text绑定,当它不是以插值表达式形式出现,那么它就会通过innerText或textContent替它里面的所有内容。 详见这里。 修正scanExpr, attr绑定与date过滤器的BUG。 添加ms-include绑定,功能与angular的ng-include相仿,详见这里 插值表达式的界定符... 阅读全文

posted @ 2013-07-08 12:30 司徒正美 阅读(1053) 评论(2) 推荐(1) 编辑

2013年7月7日 #

angular的注入实现

摘要: angular需要对用户的传入函数进行静态分析,抽取当中的依赖,才能工作。因此用户的函数,包括控制器函数,工厂函数,服务函数与$watch回调都只是一个模板,用于取toString,真正运行的是编译后的动态函数,有函数必须传参。比如:function TestCtrl($scope){ $scope.name = "xxx"}$scope就是一个很复杂的类的实例,angular内部有许多类,如何决定是放这个类的实例而不是其他类的呢。这就要看这参数长得什么样子,比如$scope肯定是作用域对象,$timeout就是定时器的。angular称之为依赖注入,而这个最简单的注入叫做 阅读全文

posted @ 2013-07-07 08:17 司徒正美 阅读(3707) 评论(2) 推荐(2) 编辑

2013年7月5日 #

CSS 去掉IE10中type=password中的眼睛图标

摘要: 在IE10中,input[type=password],如果我们输入内容后,内容会变成圆点,这与以前一样,但后面多了一个眼睛图标,我们鼠标移过去按下会出现输入内容。有时我们想去掉这功能。IE10允许我们通过伪元素处理掉它。 #aaa::-ms-reveal{ display:none; } 阅读全文

posted @ 2013-07-05 19:06 司徒正美 阅读(1535) 评论(0) 推荐(1) 编辑

2013年7月4日 #

firefox 对相对定位的TD元素渲染错误

摘要: 运行代码 firefox22下红争部分竟然以窗口做基准计算! 阅读全文

posted @ 2013-07-04 11:50 司徒正美 阅读(1218) 评论(1) 推荐(0) 编辑

迷你MVVM框架 avalonjs 0.82发布

摘要: 本版本最大的改进是启用全新的parser。parser是用于干什么的?在视图中,我们通过绑定属性实现双向绑定,比如ms-text="firstName", ms-html="sex + '士'", ms-visible="Math.abs(toggle + 2000) >= 20", 我们需要将它们转换为求值函数。我们通过ms-controller="vm"来绑定ViewModel,比如vm = { firstName: '司徒'}, 那么对于上面的第一个绑定,我们想让它变成函 阅读全文

posted @ 2013-07-04 08:23 司徒正美 阅读(2320) 评论(2) 推荐(5) 编辑

2013年6月29日 #

迷你MVVM框架 avalonjs 0.81发布

摘要: 本版本最大的改进是将视图的操作全鄣变成异步。详情如下:管道符与短路与相混淆的BUG重构on绑定,省得每次都重复绑定同一个事件回调。虽然addEventListener或attachEvent会忽略它,但这会造成不必要的计算。如果一个函数内对VM的某一个属性重复赋值,视图更视不及时会出现BUG。这是源于纯JS操作与DOM操作需要的时间量级不一样,一次DOM操作花的时间是纯JS操作的上千倍甚至上万倍。如果多个DOM操作叠加在一起,浏览器可能忙碌不过来,因此改成异步。本版本严重感谢网友@soom提交的测试文件,要不就不会发现这三个问题。迷你MVVM框架在github的仓库https://github 阅读全文

posted @ 2013-06-29 16:45 司徒正美 阅读(1060) 评论(7) 推荐(1) 编辑

上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 125 下一页