Underscore.js 的模板功能介绍与应用


Posted in Javascript onDecember 24, 2012

Underscore是一个非常实用的JavaScript库,提供许多编程时需要的功能的支持,他在不扩展任何JavaScript的原生对象的情况下提供很多实用的功能。
无论你写一段小的js代码,还是写一个大型的HTML5应用,underscore都能帮上忙。目前,underscore已经被广泛使用,例如,backbone.js唯一强依赖的库就是underscore.js。
今天主要讨论Underscore 的前端模板功能。它的模板功能和前一篇介绍的javascript前端模板是一样的。对数据的处理更加方便。写了个小例,供大家参考学习。

完整实例下载

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8" /> 
<title>Underscore</title> 
<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/> 
<meta name="apple-mobile-web-app-capable" content="yes" /> 
<meta name="format-detection" content="telephone=no"/> 
<link href="index.css" rel="stylesheet" type="text/css" /> 
<script src="jquery.js"></script> 
<script src="underscore.js"></script> 
</head> 
<body> 
</body> 
</html> 
<!--ace-template demo--> 
<script id="t2" type="text/template"> 
<%_.each(datas, function(item) {%> 
<div class="outer"> 
<div class="title"> 
<span ><%=item.film%></span> 
</div> 
<ul class="ul"> 
<%_.each(datas, function(item) {%> 
<li> 
<a href="<%=item.url%>">【<%=item.title%>】</a> 
</li> 
<%});%> 
</ul> 
</div> 
<%});%> 
</script> 
<!--数据 --> 
<script> 
var datas = [ 
{ 
title: "一九四二", 
url: "https://3water.com", 
film:"电影1" 
}, 
{ 
title: "少年派的漂流", 
url: "https://3water.com", 
film:"电影2" 
}, 
{ 
title: "教父", 
url: "https://3water.com", 
film:"电影3" 
}, 
{ 
title: "肖申克的救赎", 
url: "https://3water.com", 
film:"电影4" 
}, 
{ 
title: "3d2012", 
url: "https://3water.com", 
film:"电影5" 
} 
]; 
$("body").html( _.template($("#t2").html(), datas)); 
</script> 
<!--点击下拉事件--> 
<script type="text/javascript"> 
$('.ul').hide(); 
$('.ul>li:last-child').addClass('last-li'); 
$('body>div:first-child>ul').show(); 
$('.title').click(function(){ 
$(this).siblings().toggle(); 
$(this).parent().siblings().children('.bbs-nav-ul').hide(); 
}) $('.title').hover(function(){ 
$(this).toggleClass('hover'); 
}) 
$('.ul>li').hover(function(){ 
$(this).toggleClass('hover'); 
}) 
</script
Javascript 相关文章推荐
JavaScript 组件之旅(二)编码实现和算法
Oct 28 Javascript
JavaScript 5 新增 Array 方法实现介绍
Feb 06 Javascript
jQuery-onload让第一次页面加载时图片是淡入方式显示
May 23 Javascript
用js实现控件的隐藏及style.visibility的使用
Jun 14 Javascript
Vue.js组件使用开发实例教程
Nov 01 Javascript
AngularJS标签页tab选项卡切换功能经典实例详解
May 16 Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
Apr 28 Javascript
新手入门带你学习JavaScript引擎运行原理
Jun 24 Javascript
使用JS location实现搜索框历史记录功能
Dec 23 Javascript
在pycharm中开发vue的方法步骤
Mar 04 Javascript
vue实现简易计算器功能
Jan 20 Vue.js
javascript 星级评分效果(手写)
Dec 24 #Javascript
Jquery写一个鼠标拖动效果实现原理与代码
Dec 24 #Javascript
jquery限制输入字数,并提示剩余字数实现代码
Dec 24 #Javascript
网页加载时页面显示进度条加载完成之后显示网页内容
Dec 23 #Javascript
ajax中get和post的说明及使用与区别
Dec 23 #Javascript
javascript 全选与全取消功能的实现代码
Dec 23 #Javascript
javascript利用控件对windows的操作实现原理与应用
Dec 23 #Javascript
You might like
PHP学习资料汇总与网址
2007/03/16 PHP
php上的memcache和memcached两个pecl库
2010/03/29 PHP
基于empty函数的判断详解
2013/06/17 PHP
分享下php5类中三种数据类型的区别
2015/01/26 PHP
PHP编写daemon process详解及实例代码
2016/09/30 PHP
使用laravel根据用户类型来显示或隐藏字段
2019/10/17 PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
2020/12/29 PHP
JQUERY 对象与DOM对象之两者相互间的转换
2009/04/27 Javascript
jquery 按钮状态效果 正常、移上、按下
2013/08/12 Javascript
jQuery实现用户注册的表单验证示例
2013/08/28 Javascript
vue中的scope使用详解
2017/10/29 Javascript
JS中双击和单击事件冲突的解决方法
2018/04/09 Javascript
Angular 数据请求的实现方法
2018/05/07 Javascript
Mac下通过brew安装指定版本的nodejs教程
2018/05/17 NodeJs
vue实现多个元素或多个组件之间动画效果
2018/09/25 Javascript
Node.js如何对SQLite的async/await封装详解
2019/02/14 Javascript
vue弹出框组件封装实例代码
2019/10/31 Javascript
javascript利用canvas实现鼠标拖拽功能
2020/07/23 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
基于Python打造账号共享浏览器功能
2019/05/30 Python
简单了解python单例模式的几种写法
2019/07/01 Python
python实现井字棋小游戏
2020/03/04 Python
canvas绘制表情包的示例代码
2018/07/09 HTML / CSS
HTML5 embed 标签使用方法介绍
2013/08/13 HTML / CSS
水芝澳美国官网:H2O Plus
2016/10/15 全球购物
编写一个类体现构造,公有,私有方法,静态,私有变量
2013/08/10 面试题
竞聘副主任科员演讲稿
2014/01/11 职场文书
分家协议书
2014/04/21 职场文书
个人承诺书格式
2014/06/03 职场文书
全陪导游词
2015/02/04 职场文书
总经理岗位职责范本
2015/04/01 职场文书
2015年教务工作总结
2015/05/23 职场文书
圣诞晚会主持词
2015/07/01 职场文书
《静夜思》教学反思
2016/02/17 职场文书
Vue实现导入Excel功能步骤详解
2021/07/03 Vue.js
解析MySQL索引的作用
2022/03/03 MySQL