jQuery模板提案(13)
作者:dishuipiaoxiang 来源:Denis'Blog 发布时间:2010-03-30 18:27:00
脚本与样式模板容器
在目前的提案中,我们建议在<script id="template" type="text/html"></script>元素中包裹模板。有人提议,较好的选择是用<style id="template" type="text/html"></style>元素,因为样式更好的体现了模板表象的性质。
样式元素的缺点在于不允许出现在文档的body中,如果你不能修改head元素的内容--例如,你正在使用内容管理系统(CMS)工作,你就无法创建模板。
从技术上讲,当前的提案与用SCRIPT或STYLE包裹模板是兼容的。如果你愿意,你可以使用Style元素并替换type属性。
模板应是真正的DOM元素
只有几个人建议模板应代表真正的DOM元素,这也与ASP . NET Ajax 库创建模板的方法相似。换句话说,给模板使用标准的DOM元素,用display:none隐藏模板。
使用真正的DOM元素模板的主要缺点在于使用真正的DOM元素会导致不良副作用。例如,考虑下面的代码:
<div id="template" style="display:none">
<img src="{%= imageUrl %}" />
<br /> {% imageTitle %}
</div>
在这种情况下,浏览器会尝试加载位于{%= imageUrl } 地址的图片,这并不是你向发生的。像这样的例子有很多,一个表达式会导致意想不到的副作用或无效的 HTML。例如,如果是在form中,模板中的input可能post一个实际的值。另一个很好的例子是在<div id="{ = foo %}"/>其中的id属性包含无效的值。
修订历史
2010年2月27日--公布初步的提案;
2010年3月2日--针对社区反馈更新提案;
将renderTemplate() 重命名为 template() ;
将分隔符{{ ... }} 改为[[ ... ]] ;
增加[[! ... ]] 用来显示无编码的HTML;
移除上下文变量和诸如$id()、$index、writeHtml()和write() 的方法;
增加rendering()函数;
增加templateSetup()函数;
2010年3月9日--针对John Resig 的原型和社区的反馈更新提案;
将template() 重命名为render() ;
新增DOM操作(如append());
将表达式中的分隔符改为{%= ... %} ,代码中的分隔符改为{% ... %} ;
删除templateSetup()方法。
2010年3月16日--新增下面的评论章节--Steven Black ;
如有翻译欠妥之处,请发邮件(dexibe@gmail.com)联系本人
译者:Denis deng
译者网站:Denis'Blog


猜你喜欢
- 错误图片解决mysql -u root -p 以root身份进入mysqlgrant all on *.* to 'root'
- 数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘
- 效果图自定义一个Item新建一个QWidget对象在QWidget内添加Layout在Layout内添加要的控件为QWidget设置Layo
- 前言:Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制数据则由by
- 前面的话正则表达式是javascript操作字符串的一个重要组成部分,但在以往的版本中并未有太多改变。然而,在ES6中,随着字符
- 一、watch 默认是浅层,使用deep深层监听被侦听的 property,仅在被赋新值时,才会触发回调函数—&
- 一. torch.stack()函数解析1. 函数说明:1.1 官网:torch.stack(),函数定义及参数说明如下图所示:1.2 函数
- 一、前言一个非常强的反爬虫方案 —— 禁用所有 HTTP 1.x 的请求!现在很多爬虫库其实对 HTTP/2.0 支持得不好,比如
- 缩略图在很多时候我们都需要将图片按照同比例缩小有利于存储 但是一张张手动去改的话太麻烦了 今天我们就用python实现一个简单的将一个文件夹
- tf定义了tf.app.flags,用于支持接受命令行传递参数,相当于接受argv。import tensorflow as tf#第一个是
- pytho的使用和分发完全是免费的,它是一种面向对象的语言,它的。它的类模块支持多态,操作符重载和多重继承等高级概念,并且以python特有
- 不加的话貌似只在ie6出现过问题。出现过:改变图片地址,结果图片不见了,加载样式,但样式文件没了。就像是中断了资源的下载一样,正确时解释是
- 问题:测试时 收发流采用TestCenter、SmartBit等仪表来进行。如果仍采用其进行自动化冒烟,则会带来效率低、成本高的问题。解决方
- Anaconda是一个和Canopy类似的科学计算环境,但用起来更加方便。自带的包管理器conda也很强大。首先是下载安装。Anaconda
- 本文实例为大家分享了php bootstrap实现简单登录的方法,供大家参考,具体内容如下所有文件 记住是获取name键值对 from 里面
- 我正在参加天池上的一个竞赛,刚开始用的是DenseNet121但是效果没有达到预期,因此开始尝试使用模型融合,将Desenet和Xcepti
- 一、导言导语:在计算机进行数据交换时,常常会有一个进制转换的过程,我们知道计算机只认0 和 1.在内存系统中,基本基于二进制进行运算的,但是
- Python写倒序输出(任意位数)倒序输出数字这种方法最后输出的是字符而不是数字x=int(input('请输入任意一个数字:
- 最近在这找了好久的js菜单,都没找到满意的,今天找了个,觉得不错,最重要的是简单,希望大家可以参照一下先看看效果图吧:代码特点:js+css
- 在开发中有些敏感接口,例如用户余额提现接口,需要考虑在并 * 况下接口是否会发生问题。如果用户将自己的多条提现请求同时发送到服务器,代码能否扛