以前本身写了一个AJAX加载页面的方法;有时候一个页面里面会分区域加载不一样的东西(div,html),可是IE的回退按钮,就失去任何意义了;html
这两天研究了一下avalon.js的路由;html5
须要准备:chrome
一、引入mmRouter(请将mmRouter.js、mmHistory.js这两个文件与avalon.js放在一块儿);浏览器
二、在页面中定义VM;firefox
三、定义路由规则(能够参考avalon提供的API);htm
四、启动历史管理器;路由
五、开始扫描 (avalon.scan());文档
mmHistory是用于历史管理,它会劫持页面上全部点击连接的行为,当这些连接是以#/ 、#!/开头,就尝试匹配路由规则,阻止页面刷新(经过hash方式或HTML5的replaceState方式)。mmRouter是给咱们定义路由规则,路由规则能够更精细地指定每一个参数(param)的匹配规则,若是符合就执行对应的回调,若是不符合,就进入error回调。avalon
这上面两点是要注意的;hash
avalon 路由支持路由嵌套;路由规则支持"{}";具体能够参考官方文档