avalon中的模板绑定(ms-include)
2015-06-19 15:02
761 查看
avalon中的模板引入分为 内部模板 和 外部模板
1.内部模板
如果大家想在模板加载后,加工一下模板,可以使用 data-include-loaded 来指定回调的名字。
如果大家想在模板扫描后,隐藏loading什么的,可以使用 data-include-rendered 来指定回调的名字。
同时使用时是先加载后渲染的关系
由于ms-include绑定需要定义在一个元素节点上,它的作用仅仅是一个占位符,提供一个插入位置的容器。 如果用户想在插入内容后,去掉这容器,可以使用data-include-replace="true"。
2.外部模板
创建一个html文件,比如:tmpl.html,内容为:
1.内部模板
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <style> .ms-controller,.ms-important,[ms-controller],[ms-important]{ display: none; visibility: hidden; } </style> </head> <body> <div ms-controller="test"> <p>{{xxx}}</p> <div ms-include="'tpl'"></div> </div> </body> <script src="../avalon.js"></script> <script type="avalon" id="tpl"> here, {{ 3 + 6 * 5 }} </script> <script> avalon.ready(function(){ avalon.define({ $id: "test", xxx: "引入内部模板" }); avalon.scan(); }); </script> </html>注意,ms-include的值要用引号括起,表示这只是一个字符串,这时它就会搜索页面的具有此ID的节点,取其innerHTML,放进ms-include所在的元素内部。否则这个tpl会被当成一个变量, 框架就会在VM中检测有没有此属性,有就取其值,重复上面的步骤。
如果大家想在模板加载后,加工一下模板,可以使用 data-include-loaded 来指定回调的名字。
如果大家想在模板扫描后,隐藏loading什么的,可以使用 data-include-rendered 来指定回调的名字。
同时使用时是先加载后渲染的关系
由于ms-include绑定需要定义在一个元素节点上,它的作用仅仅是一个占位符,提供一个插入位置的容器。 如果用户想在插入内容后,去掉这容器,可以使用data-include-replace="true"。
2.外部模板
创建一个html文件,比如:tmpl.html,内容为:
<div>这是一个独立的页面</div> <div>它是通过AJAX的GET请求加载下来的</div>然后我们这样引入它:
<div ms-include-src="'tmpl.html'"></div>注意,ms-include-src需要后端服务器支持,因为用到同域的AJAX请求。
相关文章推荐
- Extjs4.0 最新最全视频教程
- Javascript中toFixed方法的改进
- 5个常见可用性错误和解决方案
- js可突破windows弹退效果代码
- JSP脚本漏洞面面观
- 使用BAT一句话命令实现快速合并JS、CSS
- js显示当前星期的起止日期的脚本
- 爆炸式的JS圆形浮动菜单特效代码
- js select常用操作控制代码
- 从jsp发送动态图像
- 原生js结合html5制作小飞龙的简易跳球
- js 页面模块自由拖动实例
- js实现小鱼吐泡泡在页面游动特效
- js 提交和设置表单的值
- PHP VBS JS 函数 对照表
- 仿51JOB的地区选择效果(可选择多个地区)
- js身份证验证超强脚本
- C#与js实现去除textbox文本框里面重复记录的方法
- 28个JS验证函数收集
- js继承 Base类的源码解析