javascript模板引擎之artTemplate 学习笔记
<div id="content"></div>
<div id="content1"></div>
<h1>在javascript中存放模板</h1>
<div id="content2"></div>
<div id="content3"></div>
<h1>辅助方法</h1>
<div id="content4"></div>
<!--  test  -->
<script id="test" type="text/html">
	<h1>{{title}}</h1>
	<ul>
		{{each list as value i}}
			<li>索引 {{i + 1}}:{{value}}</li>
			<!--<li>索引 {{i + 1}}:{{#value}}</li>--> //加#就不原样输出,会执行标签
		{{/each}}
	</ul>
</script>
<script>
	var data = {
			title:'标签',
			list:['<b>文艺</b>','博客','摄影','电影','民谣','旅行','吉他']
		};
	var html = template('test',data);
	document.getElementById('content').innerHTML = html;
</script>
<!--  test1  -->
<script id="test1" type="text/html">
	<p>不转义:{{#value}}</p>
	<p>默认转义:{{value}}</p>
</script>
<script>
	var data = {
		value:'<span style="color:#f00">Hello World!</span>'
		};
	var html = template('test1',data);
	document.getElementById('content1').innerHTML = html;
</script>
<!--  test2  -->
<script>
	var source ='<p>{{title1}}</p>' + '<ul>'+
		'{{each list as value i}}'+
			'<li>索引{{i + 1}}:{{value}}</li>'+
		'{{/each}}'+
		'</ul>';
var render = template.compile(source);
	var html = render({
			title1:'模板方式',
			list:['摄影','电影','民谣','旅行','吉他']
		});
	document.getElementById('content2').innerHTML = html;
</script>
<!--  test3  -->
<script id="test2" type="text/html">
	<h1>{{title}}</h1>
	{{include 'list'}}
</script>
<script id="list" type="text/html">
	<ul>
		{{each list as value i}}
			<li>索引{{i + 1}}:{{value}}</li>
		{{/each}}
	</ul>
</script>
<script>
	var data = {
		title:'嵌入子模板',
		list: ['文艺', '博客', '摄影', '电影', '民谣', '旅行', '吉他']
		};
	var html = template('test2',data);
	document.getElementById('content3').innerHTML = html;
</script>
<!--  test4  -->
<script id="test3" type="text/html">
	{{time | dateFormat:'yyyy年 MM月 dd日 hh:mm:ss'}}
</script>
<script>
	template.helper('dateFormat',function(date,format){
		date = new Date(date);
var map = {
			"M":date.getMonth() + 1,
			"d":date.getDate(),
			"h":date.getHours(),
			"m":date.getMinutes(),
			"s":date.getSeconds(),
			"q":Math.floor((date.getMonth() + 3)/3),
			"S":date.getMilliseconds()
		};
		format = format.replace(/([yMdhmsqS])+/g,function(all,t){
			var v = map[t];
			if(v !== undefined){
				if(all.length > 1){
					v = '0' + v;
					v = v.substr(v.length-2);
				}
				return v;
			}
			else if(t === 'y'){
				return (date.getFullYear() + '').substr(4-all.length);
			}
			return all;
		});
		return format;
	});
	var data = {time:(new Date).toString(),};
	var html = template('test3',data);
	document.getElementById('content4').innerHTML = html;
</script>
<script>
	var a = Math.floor(100.5);
	alert(a);
</script>
javascript模板引擎之artTemplate 学习笔记的更多相关文章
- Java模板引擎之Freemarker 学习笔记  一
		
什么是Freemarker Freemarker是模板引擎,不是Web框架,只是视图层的组件,官网是 https://freemarker.apache.org/ Freemarker原理 数据模型+ ...
 - JavaScript模板引擎artTemplate.js——为什么使用模板引擎?
		
作为一个工作一年的菜鸟,在公司做了几个外包项目,也接触到了不同形式的web开发.其实也没多少,就是javaweb开发和HTML5移动开发,这两者在页面展示的时候的解决方案还是有所不同的. 1.vo+e ...
 - JavaScript模板引擎实例应用
		
在之前的一篇名为<移动端基于HTML模板和JSON数据的JavaScript交互>的文章中,我向大家说明了为什么要使用JavaScript模板以及如何使用,文末还提到了laytpl.art ...
 - JavaScript模板引擎
		
JavaScript模板引擎实例应用 在之前的一篇名为<移动端基于HTML模板和JSON数据的JavaScript交互>的文章中,我向大家说明了为什么要使用JavaScript模板以及 ...
 - JavaScript模板引擎实例应用(转)
		
本文将举实例向大家讲解几个常用模板引擎的简单使用. 演示地址:模板引擎示例http://demo.52fhy.com/jstemp/ 准备工作 演示数据:blog.json结构: { "li ...
 - 各种JS模板引擎对比数据(高性能JavaScript模板引擎)
		
最近做了JS模板引擎测试,拿各个JS模板引擎在不同浏览器上去运行同一程序,下面是模板引擎测试数据:通过测试artTemplate.juicer与doT引擎模板整体性能要有绝对优势: js模板引擎 Ja ...
 - JavaScript 模板引擎实现原理解析
		
1.入门实例 首先我们来看一个简单模板: <script type="template" id="template"> <h2> < ...
 - Javascript模板引擎mustache.js详解
		
mustache.js是一个简单强大的Javascript模板引擎,使用它可以简化在js代码中的html编写,压缩后只有9KB,非常值得在项目中使用.本文总结它的使用方法和一些使用心得,内容不算很高深 ...
 - JS模板引擎 :ArtTemplate (1)
		
1.为什么需要用到模板引擎 我们在做前端开发的时候,有时候经常需要根据后端返回的json数据,然后来生成html,再显示到页面中去. 例如这样子: var data = [ {text: " ...
 
随机推荐
- Python中NumPy基础使用
			
Python发展至今,已经有越来越多的人使用python进行科学技术,NumPY是python中的一款高性能科学计算和数据分析的基础包. ndarray ndarray(以下简称数组)是numpy的数 ...
 - likely() and unlikely()
			
likely() and unlikely() http://www.cnblogs.com/yangzd/archive/2010/09/27/1837202.html 在linux中判断语句经常会 ...
 - pojg487-3279电话号码转换(字符映射)
			
http://poj.grids.cn/practice/2974 注意输入中连字符可以任意添加和删除. 描述企业喜欢用容易被记住的电话号码.让电话号码容易被记住的一个办法是将它写成一个容易记住的单词 ...
 - ArduinoYun教程之配置Arduino Yun环境
			
ArduinoYun教程之配置Arduino Yun环境 配置Arduino Yun 不管你使用前面介绍的哪种方式连接Arduino Yun.如今都能够配置你的Arduino Yun了.首先须要的是使 ...
 - 【ant项目构建学习点滴】--(3)打包及运行jar文件
			
<?xml version="1.0" encoding="UTF-8"?> <project default="compile&q ...
 - 一天一个类--ArrayList之一
			
今天开始打算将JDK7种的一些类的源码分析一下,笔者认为了解源码就是了解其实现过程,这是非常重要的,而不是简单的记住方法的使用,关键是了解其思想和目的这才是重要的.所以笔者决定首先将从一些容器下手.[ ...
 - java--进步学习IO
			
import java.io.*; public class Demo1 { public static void main(String []args) throws Exception{ File ...
 - Python IDLE 运行错误:IDLE's subprocess didn't make connection. --已解决(原创)!
			
Python IDLE 错误描述: Subprocess Startup ErrorIDLE's subprocess didn't make connection. Either IDLE can' ...
 - cocos2d-x2.0 win7第一次创建项目需要调用到的脚本(不断更新维护)//cocos2d-x 教程一
			
第一步: 最新的cocos2d-x.下载地址https://github.com/cocos2d/cocos2d-x github上最新的引擎,值得注意的是官网上发布的引擎是稳定版.选择哪种就看个人喜 ...
 - Python  获取时间戳
			
Python 获取时间通过 time 模块 如下代码,是通过获取当前的时间,按照格式输出 Python默认获取当前的时间返回的都是时间的元组,下面是元组的,字符串时间的一个转换输出 # -*- cod ...