JavaScript模板入门介绍

 更新时间:2012年09月26日 19:11:50   投稿:mdxy-dxy  
我最开始写过一个富交互的页面,其中的JavaScript代码包含了很多html标签

比如要在一个列表中利用ajax一个li的时候,我会直接把数据跟html标签拼接成一句完整的html,然后到ul中。无论数据是从服务器端拿回的,或者是从用户的input输入中拿到的——无论哪种方法都是一样。
这个拼接过程放在JavaScript文件中,显得非常不优雅。如果还把style也放在JavaScript中,那数据、结构还有样式整个就是一锅粥了,要维护这样的代让人想。最过分的就是把页面上最终要生成的HTML都直接放在服务器端,ajax吐出数据就包含了<li>标签,这样的页面几乎不存在扩展性了,修改一个前台样式都要涉及后台代码的修改。

后来我们知道了不要在JavaScript中对DOM进行style定制,而是只需要在CSS文件中定义好对应的class,然后在JavaScript中使用这个class就好。

接下来我们要做的就是用JavaScript模板把HTML结构(在这个案例中,是<li>标签)也从JavaScript中分离。

市面上的JavaScript模板很多了,以handlebars这个优秀的模板为例吧:

我们在页面的html中定义模板:

复制代码 代码如下:

<script id="list-template" type="text/x-handlebars-template">
<li>{{title}}</li>
</script>

然后在我们的逻辑JavaScript代码中可以把数据拼接到这一模版中:
复制代码 代码如下:

var source = $("#list-template").html(); //模板源,一般放在html的script中,这里我们使用jQuery,也可以使用其它方法直接获得内容字符串
var template = Handlerbars.compile(source); //编译生成一个模板template
var context = {title:"This is a todo item"} //获得数据,数据一般从ajax或者input中取得
var html = template(context); //数据+模板=新的html

这就是基本的 用法了,更多逻辑可以参考官方文档:http://handlebarsjs.com/

相关文章

  • 一文教你用JavaScript制作个简单的大转盘游戏

    一文教你用JavaScript制作个简单的大转盘游戏

    日常生活中,我们经常会见到形形色色的抽奖活动,例如九宫格、大转盘等等……本文就来教大家如何利用JavaScript制作个简单的大转盘游戏,感兴趣的可以了解一下
    2023-02-02
  • js实现前端跨域postMessage的具体使用

    js实现前端跨域postMessage的具体使用

    这篇文章主要介绍了js实现前端跨域postMessage的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • uniapp实现微信小程序的电子签名效果(附demo)

    uniapp实现微信小程序的电子签名效果(附demo)

    本文主要介绍了uniapp实现微信小程序的电子签名效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • ionic实现滑动的三种方式

    ionic实现滑动的三种方式

    这篇文章主要为大家详细介绍了ionic实现滑动的三种方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • 简单实现JS上传图片预览功能

    简单实现JS上传图片预览功能

    这篇文章主要为大家详细介绍了如何简单实现JS上传图片预览功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • javascript 变量作用域 代码分析

    javascript 变量作用域 代码分析

    作用域(scope)是javascript中一项令人棘手的的特性。所有面向对象编程语言都有某种形式的作用域,不过和把这个概念放在什么上下文中有关。在javascript里,作用域是由函数划分的。
    2009-06-06
  • javascript html5摇一摇功能的实现

    javascript html5摇一摇功能的实现

    这篇文章主要为大家详细介绍了javascript html5摇一摇功能的实现过程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • JavaScript捕捉事件和阻止冒泡事件实例分析

    JavaScript捕捉事件和阻止冒泡事件实例分析

    这篇文章主要介绍了JavaScript捕捉事件和阻止冒泡事件,结合实例形式分析了冒泡的原理及javascript阻止冒泡的相关操作技巧,需要的朋友可以参考下
    2018-08-08
  • 登陆成功后自动计算秒数执行跳转

    登陆成功后自动计算秒数执行跳转

    本文实现的是这样的一个功能登陆成功后自动查秒跳转,具体示例如下,不了解的朋友可以学习下哦
    2014-01-01
  • 浅谈gulp创建完整的项目流程

    浅谈gulp创建完整的项目流程

    本篇文章主要介绍了浅谈gulp创建完整的项目流程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12

最新评论