这是OurJS.cn发布的新项目: Tempo.js
1. Tempo.js 是一个轻量的js模板工具类;
2. 目的是实现HTML代码与JS代码的分离,使得在用JS输出HTML时更方便,代码更清晰;
3. Tempo.js的原则是轻量(体积小,下载快,执行快),在不进行压缩的情况下也只有1k大小;
4. Tempo.js履行MIT许可证,允许随意集成到你的JS库中;
5. 目前Tempo.js的功能简单,但本着轻量和只解决特定问题的原则下,在以后的版本中,Tempo.js在功能上不会有太多的改动;
6. Tempo.js在代码上也没有严格的过滤和错误处理,用意是用最简单的算法维持其轻量,只确保在最简单原始的使用下不出错;
链接: 下载Tempo.js
DEMO
查看Tempo.js源码
使用方法:
1.首先, 引入tempo.css文件:
<link href="tempo.css" rel="stylesheet" type="text/css" media="all" />
目前tempo.css内只有一行: .tempo {display:none;} 目的是让模板隐藏。你可以根据需要把这一行写入到你的CSS文件中。
2.引入tempo.js文件:
<script type="text/javascript" src="tempo.js"></script>
3.建立模板和存放生成的HTML的容器:
<div class="tempo" id="tempo_a">
<div class="{class}">{title}</div>
</div>
<div id="container">
</div>
4.编码js,调用Tempo
JavaScript:
var arr = [
{title:'this is title!','class':'cls'},
{title:'this is another title!','class':'cls'},
{title:'this is another title too!','class':'cls'}
];
var tempo = new Tempo('tempo_a');
document.getElementById('container').innerHTML = tempo.setArray(arr).join('');
Tempo类提供了3个方法:
1. new Tempo('id').set(object)
: 接受一个对象,返回一个由这个对象(数据)+模板生成的HTML字符串。
数据:{'title':'xxxxxx'} + 模板:<div>{title}</div>
==>>
'<div>xxxxx</div>'
2. new Tempo('id').setArray(array)
: 接受一个对象数组,返回一个由这个数组内多个对象(多个数据)+模板生成的HTML字符串数组。
数据:[{'title':'xxxxxx'},{'title':'yyyyy'}] + 模板:<div>{title}</div>
==>>
['<div>xxxxx</div>','<div>yyyyy</div>']
2. new Tempo('id').setMap(array)
: 接受一个包含多个对象的对象(想象为Map对象),返回由这个对象内多个对象(多个数据)+模板生成的对象。
数据:{'aaa':{'title':'xxxxxx'},'bbb':{'title':'yyyyy'}} + 模板:<div>{title}</div>
==>>
{'aaa':'<div>xxxxx</div>','bbb':'<div>yyyyy</div>'}
5.生成的HTML代码:
<div id="container">
<div class="cls">this is title!</div>
<div class="cls">this is another title!</div>
<div class="cls">this is another title too!</div>
</div>
原文: http://ourjs.cn/show.php?id=794
来源: OurJS.cn
分享到:
相关推荐
Jira是一款广受欢迎的项目管理和问题追踪工具,尤其在IT行业中被广泛应用。Tempo是Jira的一款强大插件,专门用于时间跟踪和管理。这款插件增强了Jira的基础功能,帮助团队更有效地追踪工作时间,优化资源分配,提高...
钢琴谱是钢琴学习者必不可少的工具,它包含了乐曲的所有信息,包括音高、节奏、动态和情感表达等。在钢琴入门阶段,掌握钢琴谱术语是至关重要的,因为这些术语能够帮助演奏者准确理解作曲家的意图,从而更好地演绎...
1. A tempo:回到原始速度,意味着在一段速度变化后恢复到先前设定的速度。 2. Abbandono:表示演奏时的自由度和无拘无束,允许演奏者根据个人情感发挥。 3. Acoustic:与声音学相关的,通常指的是自然产生的声音...
GEE JavaScript基础教程:包含影像的预处理和计算和下载
钢琴演奏中的表情术语是指导演奏者如何诠释音乐情感的重要元素,它们...这些表情术语是钢琴演奏者理解和表达音乐情感的关键工具,通过它们,演奏者可以更准确地传达作曲家的意图,将乐谱上的音符转化为充满情感的音乐。
Tempo 是个轻量级的JSON渲染引擎(只有4kb),使用它可以以纯HTML的方式来构建数据呈现。 使用JSON作为数据源时经常是会在JS中解析JSON,然后拼成HTML呈现数据。而 Tempo 可以实现 HTML 与 JavaScript 的完全分离,...
Maven是一个项目管理和构建工具,主要用于Java项目的构建和依赖管理。它通过一系列生命周期(lifecycle)、目标(goal)和插件来帮助开发者自动完成项目的构建过程。在Maven中,依赖管理是一个重要的功能,它能够...
stableBeat.js 使用浏览器时钟的Javascript节拍器Thijs(@recyclerobot)撰写在工作中我们玩 用法 [removed][removed] [removed] // EXAMPLE USAGE // 1. set return function to be called every time ...
Node.js(版本12或更高版本) NPM 然后,您需要安装Expo Client npm install -g expo-cli 克隆存储库 git clone https://github.com/abulnes16/tempo.git 安装依赖项 npm install 并运行您的项目 npm start ...
【标题】"mayukhsen13.github.tempo:KGEC E-Cell项目前端"指的是一个GitHub仓库,其中包含了KGEC(可能是Kanpur Gandhi Engineering College)E-Cell(企业细胞,通常是一个大学内的学生组织,旨在促进创业精神)...
Exception in thread main org.apache.hadoop.security.AccessControlException: Permission denied: user=L.MOON, access=WRITE, inode=/user/lsy/result1/_temporary/0:lsy:supergroup:drwxr-xr-x ...
甜菜 Web音频API的多节奏音序器库。 定序器可以具有多个层,其中每个层具有不同的步数。... tempo : 100 } ) ; // create a euclidean pattern - 5 pulses distrubted in 7 steps var pattern = beet . pattern ( 5
portnoy.js 看中您的17/16 sizzlin节奏,打动您的朋友。 这只是zya的功能的无耻剥夺,只是想从头开始编写一个版本,以求有趣和简洁。 用法 var ctx = new AudioContext ( ) ; var portnoy = new Portnoy ( { ...
在音频处理领域,改变音高(Pitch)和速度(Tempo)是常见的需求,这主要应用于音乐制作、声音效果编辑以及语音合成等多个场景。本文将深入探讨如何改变音频的音高和速度,并结合"change_pitch_tempo.zip"压缩包中的...
JIRE插件用于企业管理项目的插件,tempo-timesheet,展示时间分配任务
mv node-v16.20.2-linux-x64 node sudo -s cp -a /data1/tempobi/tempo/mids/node/bin/node /usr/local/bin/node cp -a /data1/tempobi/tempo/mids/node/bin/npm /usr/local/bin/npm
这是一首示例歌曲: Song: Tempo: 105 Flow: - Verse: x4 - Chorus: x4 Kit: - bass: house_2_1.wav - snare: roland_tr_909_2.wav - hihat: house_2_5.wav - cowbell: big_beat_5.wav - deep: house_2_2.wavVerse:...
GEE JavaScript基础教程:包含影像的预处理和计算和下载
JavaScript HTML5 CSS3 SQL 实施技术 Bcryptjs PostgreSQL 亚马逊网络服务S3 字体真棒 尾风CSS 赫鲁库 发展 以下是在本地开发环境上运行应用程序的说明。 预装要求: Node.js PostgreSQL 指示: 克隆此...