Underscore是一個很是實用的JavaScript庫,提供許多編程時須要的功能的支持,他在不擴展任何JavaScript的原生對象的狀況下提供不少實用的功能。javascript
不管你寫一段小的js代碼,仍是寫一個大型的HTML5應用,underscore都能幫上忙。目前,underscore已經被普遍使用,例如,backbone.js惟一強依賴的庫就是underscore.js。css
Underscore.js學習資源:html
Underscore.js 官網:http://underscorejs.org/#each 前端
Underscore.js 中文文檔: http://www.css88.com/doc/underscore/ java
今天主要討論Underscore 的前端模板功能。它的模板功能和前一篇介紹的javascript前端模板是同樣的。對數據的處理更加方便。寫了個小例,供你們參考學習。jquery
完整實例能夠經過這個網址下載:http://pan.baidu.com/share/link?shareid=2509652039&uk=688556984web
<!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: "http://www.baidu.com", film:"電影1" }, { title: "少年派的漂流", url: "http://www.baidu.com", film:"電影2" }, { title: "教父", url: "http://www.baidu.com", film:"電影3" }, { title: "肖申克的救贖", url: "http://www.baidu.com", film:"電影4" }, { title: "3d2012", url: "http://www.baidu.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