E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
avalonjs
迷你MVVM框架
avalonjs
v6.1发布,性能大幅提高
本次更新,带来了几个新API与在IE6的更好性能。 添加ms-css绑定,用法为ms-css-xxx=yyy, 相当于jQuery的$el.css(xxx,yyy)操作,不同的,以后yyy有什么改动,框架都是自动帮你处理。 添加非常好用的html过滤器,即{{ xxx | html}} 相当于原来的 ms-html="xxx",不同的是ms-html是直接使用inn
·
2015-10-30 13:53
val
迷你MVVM框架
avalonjs
v0.6.2发布
本版本的更新如下。 添加$json对象,它是ViewModel对应一个纯JS对象,没有访问器与框架添加的一些特有方法与属性,方便用户直接把它提交到后台。以后我们每次修改ViewModel的属性都会同步此对象。从此我们修改ViewModel时就能同时同步View与Model。 重构avalon.define, Collection, 求值函数,代码更加精简,比上一版本减少50行。 现
·
2015-10-30 13:53
val
迷你MVVM框架
avalonjs
v0.5.1发布,性能大幅提高
然后
avalonjs
v5把大体的架构完成了,然后重点改良这些方法了。在v5.1中所有延迟都没有了,即便在IE6下也很接近之前在chrome的运行效果。算是一次非常出色的改
·
2015-10-30 13:53
val
Avalon学习
官网地址:http://
avalonjs
.github.io/,移动版本是avalon.modern.js。
·
2015-10-27 14:12
val
迷你MVVM框架
avalonjs
1.3.9发布
本次升级,avalon改进了许多内部方法,大大提升性能,并且带来异步刷新视图的新功能。 ms-html内部不再使用异步 head元素中的avalon元素加入ms-skip指令 重构计算属性,现在超级轻量化 重构CG回收,不会每次都全部检测所有绑定对象 重构内部方法isArrayLike,更好的判定非负整数 重构number过滤器 重构widget的节点回收,去掉on
·
2015-10-27 13:00
val
迷你MVVM框架
avalonjs
学习教程22、avalon性能大揭密
avalon之所以能在页面处理1W个绑定(angular对应的数字是2000),出于两个重要设计——基于事件驱动的双向绑定链及智能CG回收机制。 avalon的双向绑定链是通过Object.defineProperties及VBScript,将要操作VM属性变成一种访问器属性。访问器属性是一种特殊的属性,需要我们为它指定setter、getter方法(当然,这也是框架内部生成的,只有计算属性可以
·
2015-10-27 13:59
val
迷你MVVM框架
avalonjs
1.3.8发布
avalon1.3.8主要是在ms-repeat、 ms-each、 ms-with等循环绑定上做重大性能优化,其次是对一些绑定了事件的指令添加了roolback,让其CG回收更顺畅。 重构ms-repeat、ms-each、ms-with, 内部的代理对象全部使用普通的对象实现, 并且一个监控数组只对应一个代理VM数组,从而大量减少VM的数量。 avalon不再使用scanCallb
·
2015-10-27 13:59
val
迷你MVVM框架
avalonjs
学习教程18、一步步做一个todoMVC
大凡出名的MVC,MVVM框架都有todo例子,我们也搞一下看看avalon是否这么便宜。 我们先从react的todo例子中扒一下HTML与CSS用用。 <!doctype html> <html lang="en" data-framework="react"> <head> <meta c
·
2015-10-27 13:58
mvc
迷你MVVM框架
avalonjs
学习教程21、双向绑定链
avalon的双向绑定机制,是通过一条依赖链实现。此依赖链最底层是监控属性、监控数组,中层是计算属性、监控函数,再上点是求值函数,最上层是视图刷新函数。 所谓计算属性,监控属性,监控函数属性,我们改变它们的值,它们会引发视图变化;而监控数组,是我们调用它的一些方法,也会引发视图变化。 var vm = avalon.define({ a: "这是监控属性&q
·
2015-10-27 13:58
val
迷你MVVM框架
avalonjs
学习教程16、过滤器
avalon的过滤器是参考自angular与rivets。它也被称做管道文本过滤器,它的处理对象只能是文本(字符串),它只能用在文本绑定中,并且只能是双花括号形式。下面是各大家的过滤器比较: rivetsjs <span rv-text="event.startDate | date"></span> <input rv-value=&q
·
2015-10-27 13:57
过滤器
迷你MVVM框架
avalonjs
学习教程14、事件绑定
之前的章节许多示例代码也或多或少地展示了如何使用ms-click来绑定事件了。能直接在模板上绑定是事件,这也是静态模板与动态绑定的一大区别。ms-click不是简单的onclick的别名,它在内部屏蔽了浏览器的差异,并且对许多浏览器暂时不支持的事件做了兼容处理。 总的来说,事件绑定是使用ms-on-☆绑定来实现,但avalon也提供了许多快捷方式,让用户能直接以ms-eventName调用那些常
·
2015-10-27 13:56
val
迷你MVVM框架
avalonjs
学习教程15、属性监听与模块通信
avalon的ViewModel对象从其内部EventManager里继承了三个方法,$watch、$unwatch、$fire三个方法,它们就是我们本节的主题。 词如其名,非常直白,一看就知道做什么。我们先从$watch方法说起,它能监听当前的VM第一层的监控属性 与 计算属性,如果某属性是一个对象,想监控其子孙属性,就需要定位到此对象上使用$watch回调了。$watch回调会默认传入先后两
·
2015-10-27 13:56
val
迷你MVVM框架
avalonjs
学习教程10、样式操作
一般情况下我们通过设置类名就可以改变元素的样式,但涉及到动画部分,就一定需要设置内联样式了,因此有了ms-css。*ms-css*的用法为ms-css-样式名="样式值", 如ms-css-width=”prop”(会自动补px),ms-css-height=”{{prop}}%”, ms-css-color=”prop”, ms-css-background-color=”p
·
2015-10-27 13:55
val
迷你MVVM框架
avalonjs
学习教程11、循环操作
avalon是通过ms-repeat实现对一组数据的批量输出。这一组数据可以是一个数组,也可以是一个哈希(或叫对象)。我们先从数组说起吧。 第二节就说,凡是定义在VM中的数组,如果没有以$开头或者没放在$skipArray数组里,都会转会监控数组。监控数组其实就是一个被重写了push、unshift、shift、pop、 splice、sort、reverse方法的普通数组。当然它也添加了其他一
·
2015-10-27 13:55
val
迷你MVVM框架
avalonjs
学习教程12、数据联动
在许多表单应用,我们经常遇到点击一个复选框(或下拉框)会引发旁边的复选框(或下拉框)发生改变,这种联动效果用avalon来做是非常简单的。在avalon里,存在各种绑定回调与$watch回调,完全满足你的需求。 下面是avalon所有绑定回调。 data-duplex-changed,用于ms-duplex绑定,值改变后触发; 参数:当前元素的值 data-include-loade
·
2015-10-27 13:55
val
迷你MVVM框架
avalonjs
学习教程6、插入移除处理
ms-if是属于流程绑定的一种,如果表达式为真值那么就将当前元素输出页面,不是就将它移出DOM树。它的效果与上一章节的ms-visible效果看起来相似的,但它会影响到:empty伪类,并能更节约性能。ms-if还有一个分支,叫ms-if-loop,它是配合ms-repeat绑定使用,因此以后再说。 我们可以通过以下例子比较一下两者: <!DOCTYPE HTML> <
·
2015-10-27 13:54
val
迷你MVVM框架
avalonjs
学习教程7、数据缓存
jQuery的许多功能都可以通过avalon的绑定属性来处理,如click方法对应ms-click,css方法对应ms-css,toggle方法对应ms-visible,它的数据缓存功能avalon也搬过来了。但不同于jQuery的是,avalon是直接将数据保存到元素节点的HTML5的data-☆属性上。在从data-☆属性还原数据时,它会简单的数据转换,再返回给你。 在ms-data绑定中,
·
2015-10-27 13:54
val
avalonjs
响应式瀑布流
效果: 感谢迅雷ued的图片支持 转载请注明出处:http://www.cnblogs.com/TheViper/p/4026462.html 参考:张鑫旭的这篇文章http://www.zhangxinxu.com/wordpress/2012/03/%E5%A4%9A%E6%A0%8F%E5%88%97
·
2015-10-27 13:44
瀑布流
avalonjs
仿微博的图片拖动
效果: 转载请注明出处: http://www.cnblogs.com/TheViper/p/4026401.html 1 <div id='post_img' ms-controller='post_img'> 2 <ul id='post_img_inner' ms-mousemove='onmousemove'> 3
·
2015-10-27 13:43
val
迷你MVVM框架
avalonjs
0.81发布
本版本最大的改进是将视图的操作全鄣变成异步。详情如下: 管道符与短路与相混淆的BUG 重构on绑定,省得每次都重复绑定同一个事件回调。虽然addEventListener或attachEvent会忽略它,但这会造成不必要的计算。 如果一个函数内对VM的某一个属性重复赋值,视图更视不及时会出现BUG。这是源于纯JS操作与DOM操作需要的时间量级不一样,一次DOM操作花的时间是纯JS操
·
2015-10-21 12:40
val
迷你MVVM框架
avalonjs
0.99发布
在本版本主要是性能优化,添加一些有用的功能(如回调什么的),离成品阶段不远了。 修正 updateViewModel bug 修正监控数组的set方法 bug 添加data-each-rendered, data-repeat-rendered, data-with-rendered, data-include-loaded, data-include-rendered等回调
·
2015-10-21 12:18
val
迷你MVVM框架
avalonjs
0.83发布
本版本做了如下改进: 重构计算属性, 这是@soom提出的BUG,发现计算属性被某个监控属性向上驱动更新自己时,不会解发$watch回调。详见这里。 强化ms-bind绑定,当第一次扫描时也会执行它的回调,以后这个值改动时,和以前一样执行这回调。 详见这里 。 修正ms-text绑定,当它不是以插值表达式形式出现,那么它就会通过innerText或textContent替它里面的所
·
2015-10-21 10:11
val
迷你MVVM框架
avalonjs
0.82发布
本版本最大的改进是启用全新的parser。 parser是用于干什么的?在视图中,我们通过绑定属性实现双向绑定,比如ms-text="firstName", ms-html="sex + '士'", ms-visible="Math.abs(toggle + 2000) >= 20", 我们需要将它们转换为求值函数。我们通过ms-
·
2015-10-21 10:11
val
迷你MVVM框架
avalonjs
0.85发布
本版本对循环绑定做了巨大改进,感谢@soom, @limodou, @ztz, @Gaubee 提供的大量测试文件。 fix scanNodes, 在循环绑定(ms-each)扫描元素节点时必须 nextTick,否则旧式IE会忙碌不过来。 fix ms-css ,旧式IE style[name] = value, 当value为NaN ,不带单位或不是数值什么会抛异常,需要try
·
2015-10-21 10:11
val
迷你MVVM框架
avalonjs
0.73发布
本版本只要做了以下改进 将options绑定独立成一个模块 不再插入多余的分号。 引入jQuery式的mix(extend), type, isWindow, isPlainObject方法。 废弃$scope, $json, 重命名为更直观的$vmodel与$model,不过这两个属性一直支持到10.1日 重构each绑定,再也加入多余注释节点了。
·
2015-10-21 10:09
val
迷你MVVM框架
avalonjs
0.72发布
本版本修正@月王提出的关于visible的BUG,比如说用户是用DIV摸拟的按扭,会将它的display改成inline-block,之前avlaon只是简单地取它的默认值,得到block,因此隐藏再显示后,按钮就会占满一行,让用户布局崩溃了。 此外,从本版本开始,avalon将从mass中分家,有自己独立的仓库,地址为https://github.com/RubyLouvre/avalon
·
2015-10-21 10:08
val
迷你MVVM框架
avalonjs
0.7发布
本版本主要是添加了template绑定与对扫描机制进行大量改良 template绑定的语法为ms-template-id="aaa", id为页面上的某个元素节点,aaa为ViewModel的一个对象属性。建议将此对象属性的名字标识为不可监控的,即$tmplOpts,因为用户可能用不到此对象,我们就无需立即转换它为子ViewModel。id是一个script标签,其type属
·
2015-10-21 10:07
val
avalonjs
0.5发布,迷你简单易用的MVVM框架
为了方便编写控件,本次升级就是整合了一个迷你的三百行的迷你jQuery进去。主要更新如下: 添加强大的UI绑定与自定扫描功能,让你一行JS也不用写生成UI。UI绑定的格式为ms-ui-opts?=uiName。 opts为VM中的对象名,uiName为控件名,UI会自动寻找data-id的值作为ViewModel的ID,然后你就可以在avalon.models[id]得到它。UI控件会优先
·
2015-10-21 10:05
val
迷你MVVM框架
avalonjs
1.2.6发布
avalon.mobile 针对GCC压缩器进行优化 avalon.mobile对浏览器是否支持触屏使用更好的判定 监控数组的splice,remove,removeAt进行了重构,修改直接删掉列表的第一个元素或最后一个元素,$first, $last不同步的BUG avalon的ms-duplex在IE6-9下对oninput事件使用更好的方式实现模拟 重构文本绑定,对于不
·
2015-10-21 10:03
val
迷你MVVM框架
avalonjs
1.2.5发布
avalon1.2.5发布,升级ms-widget,整合avalon.require.text到核心,并且修复了avalon.mobile的avalon.innerHTML方法的BUG,让它能执行脚本。 现在开始重新升级avalon.ui,目前button, tabs已经升级完毕。大家可以以它为范例,编写相应组件。新的控件VM要求必须装备$init, $remove两个方法。 迷你MVVM框架
·
2015-10-21 10:57
val
迷你MVVM框架
avalonjs
1.2.4发布
这段时间一直忙于建立avalon的单元测试,与重构官网。对avalon的更新都是来自公司内部的需求,性能优化与一些BUG修复。 添加大量调试日志。 重构shimController,以提高性能。 createWithProxy, createEachProxy生成的代理VM的$id符合一定的格式,方便在parseExpr中生成的函数能共享。 重构parseExpr,减少表达式转
·
2015-10-21 10:54
val
迷你MVVM框架
avalonjs
0.98发布
在本版本中,avalon侧重于对组件开发的支持,可用控件达到12个,末来将大力投入对GRID,TREE等重型UI的开发中。 添加ms-widget绑定,废弃ms-ui绑定 为ms-include添加跨域处理与绑存模板的功能 支持在on绑定通过bind方法修改this值 对{{}}插值表达式中出现的过滤使用更好的正则进行抽取 优化 ms-if的插入监听机制 升级avalo
·
2015-10-21 10:47
val
迷你MVVM框架
avalonjs
0.95发布
本版本最主要的改进是ms-with 深层绑定的实现,至少,avalon1.0所有重要的feature已经开发完毕,之后就是小补小漏,性能优化了。 ms-with进行绑定。对VM的某个对象属性重新赋给它一个对象,那么页面上对应的列表将根据它的键值对重新排列增删,修改它的$val。如果对它的对象属性的某一个键重新赋值 ,只会进行更新操作,详见index21with.html, index22w
·
2015-10-21 10:46
val
迷你MVVM框架
avalonjs
0.97发布
在本版本中,王之三柱臣全部就位! mmRouter: https://github.com/RubyLouvre/mmRouter mmAnimate: https://github.com/RubyLouvre/mmAnimate mmRequest: https://github.com/RubyLouvre/mmRequest 在这段其间修正的BUG与增强 fi
·
2015-10-21 10:46
val
迷你MVVM框架
avalonjs
0.94发布
本版本主要做了如下改进: 优化ms-if的逻辑,现在描述DOM的顺序是 ms-skip, ms-important, ms-controller, ms-if ... 只要元素存在ms-skip 这个绑定属性时,就忽略扫描此元素及子孙。然后是ms-important, ms-controller这 两个与作用域有关的绑定,如果它们指向的VM在avalon.vmodels 不存在时,规则同m
·
2015-10-21 10:46
val
迷你MVVM框架
avalonjs
0.96发布
本版本主要是性能优化与 fix BUG,改进如下: 处理notifySubscribers中的BUG,它在标准浏览器不会移除那些无用的视图刷新函数。详见这里 重构modelBindling.SELECT方法中的updateView, 感谢AngularJS中文社区(278252889)中的@basecss²º¹³指正,详见这里 处理eachI
·
2015-10-21 10:46
val
迷你MVVM框架
avalonjs
0.91发布
本版本修了一些BUG与不合理的地方,感谢感谢ztz, 民工精髓, 姚立, qiangtou等人指正。 处理AMD加载 旧式IE下移除script节点内存泄漏的问题 fix firefox 全系列visible,缘由是当节点不在DOM树时,getComputedStyle不精确 fix Object.getPrototypeOf的验证正则 去除excapeRegExp中的捕获 update
·
2015-10-21 10:45
val
迷你MVVM框架
avalonjs
0.92发布
本版本最大的改进是引入ms-class的新风格支持,以前的不支持大写类名及多个类名同时操作,新风格支持了。还有对2维监控数组的支持。并着手修复UI框架。 重构 class, hover, active, bind绑定 fix parseExpr在IE全系列的BUG。IE全家 Function("return ")出错,需要Function("return
·
2015-10-21 10:45
val
迷你MVVM框架
avalonjs
0.93发布
这段时间吸取@limodou, @东灵等人的意见,做了以下改进 重构isArrayLike,提高avalon.each的性能,原来avalon.each是依赖于isArrayLike来判定是循环普通对象还是类数组。isArrayLike是从jQuery扒过来,它内部依赖于getType, isWindow这两个笨重的方法,因此性能不怎么样。新的isArrayLike去掉它们,在avalon
·
2015-10-21 10:45
val
avalonjs
中的if else实现的几种方法
在学习
avalonjs
的过程中,发现模板中并没有ifelse这样的写法,不像tempalteejs这些,所以总结了三种方法来实现,仅供在使用
avalonjs
的同学参考,主要是通过ms-if表达式和方法来实现
subying
·
2015-10-05 11:00
学习
else
if
avalonjs
迷你MVVM框架
avalonjs
1.5 入门教程
avalon经过几年以后,已成为国内一个举足轻重的框架。它提供了多种不同的版本,满足不同人群的需要。比如avalon.js支持IE6等老旧浏览器,让许多靠政府项目或对兼容性要求够高的公司也能享受MVVM的乐趣。avalon.modern.js支持IE10以上版本,优先使用新API,性能更优,体积更少。avalon.mobile.js在avalon.modern的基础提供了触屏事件的支持,满足大家在
司徒正美
·
2015-09-07 16:00
迷你MVVM框架
avalonjs
1.5 入门教程
avalon经过几年以后,已成为国内一个举足轻重的框架。它提供了多种不同的版本,满足不同人群的需要。比如avalon.js支持IE6等老旧浏览器,让许多靠政府项目或对兼容性要求够高的公司也能享受MVVM的乐趣。avalon.modern.js支持IE10以上版本,优先使用新API,性能更优,体积更少。avalon.mobile.js在avalon.modern的基础提供了触屏事件的支持,满足大家在
司徒正美
·
2015-09-07 16:00
常用手册
the-swift-programming-language-in-chinesehttp://wiki.jikexueyuan.com/project/swift/v1.0.html JSMVVM框架AVALONhttps://
avalonjs
.github.io
redasurc
·
2015-08-05 11:00
avalonjs
实现简单购物车
因为最近有在做购物车,然后我们是用avalon来实现一些模块的,所以顺其自然的用avalon来实现购物车,目前发现avalon还是比较强大的,大大的节约了代码量。购物车一般具备的功能是加减数量、选择商品、删除商品和计算金额,因为avalon具有双向绑定功能,所以杜绝了dom的操作,只需要完成功能的逻辑即可,可以分下面几个步骤实现。runjs:http://runjs.cn/detail/1dnkg
ayanlp7153
·
2015-07-04 18:00
avalonjs
实现简单购物车
因为最近有在做购物车,然后我们是用avalon来实现一些模块的,所以顺其自然的用avalon来实现购物车,目前发现avalon还是比较强大的,大大的节约了代码量。 购物车一般具备的功能是加减数量、选择商品、删除商品和计算金额,因为avalon具有双向绑定功能,所以杜绝了dom的操作,只需要完成功能的逻辑即可,可以分下面几个步骤实现。 runjs: http://runjs.cn/detai
subying
·
2015-07-04 18:00
购物车
avalon
本来说好的研究
avalonJS
最后演变成了看着大神在那边互相比拼实力。。
本来说好的研究
avalonJS
最后演变成了看着大神在那边互相比拼实力。。
·
2015-05-04 21:00
SetInterval
avalonjs
笔记
1>复选卡框和单选框 复选卡框 监控已选框的数组,即通过属性监控来判断是否全选 <div ms-controller="test"> <ul> <li>{{isAllChecked}}全选 <input type=
·
2015-04-28 18:00
val
迷你MVVM框架
avalonjs
入门教程 -转载
关于
AvalonJS
avalon是一个迷你的MVVM框架,虽然从发布到现在,它臌胀了不少,但它现在还是比knockout小许多。
村长kylin
·
2015-04-24 01:00
JavaScript 前端神器
avalonJS
入门
转自:http://www.tuicool.com/articles/2aiAzau
avalonJS
是司徒正美开发和维护的前端mvvm框架,可以轻松实现数据的隔离和双向绑定,相比angularJS等前端框架它有如下优势
gf771115
·
2015-04-20 14:00
迷你MVVM框架
avalonjs
1.4.1发布
以后有关avalon的版本升级消息,全部改放到这里 重构parseHTML,让其支持xhtml 强化 ms-duplex-number拦截器 添加data-duplex-number辅助指令 值为strong medium weak ms-duplex添加对input[type=hidden]的支持 createCache改为LRU实现,avalon.nextTick大重构
·
2015-04-15 14:00
val
上一页
1
2
3
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他