尝试在让script的type属性等于text/html_javascript技巧

我们可以在<script>片断中定义一个被JS调用的代码,但代码又不在页面上显示,这时,我们可以使用下面的方法:

复制代码 代码如下:

<script id="commentTemplate" type="text/html">
<li>
<div class="photo">
<a href="#">
<img src="[UserImg]" /></a></div>
<p>
<a href="#">[UserName]:</a><span class="time">[CreateDate]</span></p>
<div class="clear">
</div>
</li>
</script>

复制代码 代码如下:

<div id="comment_ul_2">
</div>
<input type="button" id="addFun" value="click me" />
<script type="text/javascript">
var reg = new RegExp("\\[([^\\[\\]]*?)\\]", 'igm'); //i g m是指分别用于指定区分大小写的匹配、全局匹配和多行匹配。
$("#addFun").click(function () {
var html = document.getElementById("commentTemplate").innerHTML;
var source = html.replace(reg, function (node, key) { return { 'UserImg': '1', 'UserName': 'zhang', 'CreateDate': '2011-1-1'}[key]; });
$("#comment_ul_2").append(source);
});
var zzl = "name:[name]";
zzl = zzl.replace(reg, function (node, key) { return { 'name': '占占'}[key]; });
alert(zzl);
</script>

OK,这个意思是说,当你单击按钮时,可以把commentTemplate的内容追到comment_ul_2里,这很有意思吧,呵呵!

而其中有一个replace,也很有意思,向在替换时,可以接受一个json字符串,然后根据json的key来对比js模块里的key,进行赋值!
真的很有意思!

时间: 2024-10-18 15:11:10

尝试在让script的type属性等于text/html_javascript技巧的相关文章

JvaScript的type属性等于text/html 例子

在使用javascript标签<script>的时候,其中type最常用的就是text/javascript 其实这个type还有其他用法,下面直接给出例子: type属性为text/html的时候,<script>片断中定义一个被JS调用的代码,代码不会在页面上显示 <script id="commentTemplate" type="text/html"> <li> <div class="phot

javascript-网页中 script标签 type属性有什么用

问题描述 网页中 script标签 type属性有什么用 如题,按js参考材料上所说给type属性附上text/javascript说是告诉浏览器脚本属性,但我把这个删除我发现chrome也能正常显示javascript的,不知道为什么告诉不告诉浏览器脚本属性为什么都一样. 解决方案 不设置就是默认type=text/javascript 解决方案二: type是默认脚步属性:因为javascript占据了大半的市场,所以很多浏览器都默认为javascript和css3,html5中就不用再次生

js修改input的type属性问题探讨_javascript技巧

js修改input的type属性有些限制.当input元素还未插入文档流之前,是可以修改它的值的,在ie和ff下都没问题.但如果input已经存在于页面,其type属性在ie下就成了只读属性了,不可以修改.在ff下仍是可读写属性. 今天遇到个问题,输入框有默认值"密码",但获得焦点时,"密码"两字会去掉,输入时直接变成"****"的password类型.很明显,一开始的时候,input的类型是text,后来变成了password类型.直观的思路是

关于Script的Defer属性[原创]_应用技巧

1.没有defer属性的运行 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 2. [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] PS:运行后再查看一下源文件,你会发现里面的代码都已经执行过了.

Type 属性

  返回关于文件或文件夹类型的信息. 例如,对于以 .TXT 结尾的文件将返回"文本文档". object.Type object 应为 File 或 Folder 对象. 说明 下面的代码说明了利用 Type 属性返回文件夹属性的方法. 在这个例子中,可以尝试一下向过程提供回收站或其他特殊文件夹的路径. function ShowFileType(filespec){   var fso, f, s;   fso = new ActiveXObject("Scripting

JavaScript元素type属性达到预加载但不执行的效果

文章简介:我们经常使用动态创建 JavaScript 的方式来实现 JavaScript 文件的无阻塞(Non-blocking).并行下载(Parallel ). 我们经常使用动态创建 JavaScript 的方式来实现 JavaScript 文件的无阻塞(Non-blocking).并行下载(Parallel ).其实还可以添加自定义的 type 属性(比如 text/cache),达到预加载但不执行的效果: var doc = document,    el = doc.createEle

js修改input的type属性及浏览器兼容问题探讨与解决_javascript技巧

js修改input的type属性有些限制.当input元素还未插入文档流之前,是可以修改它的值的,在ie和ff下都没问题.但如果input已经存在于页面,其type属性在ie下就成了只读属性了,不可以修改.在ff下仍是可读写属性. 今天遇到个问题,输入框有默认值"密码",但获得焦点时,"密码"两字会去掉,输入时直接变成"****"的password类型.很明显,一开始的时候,input的类型是text,后来变成了password类型.直观的思路是

script的async属性以非阻塞的模式加载脚本_javascript技巧

1.HTML5实现了script的async属性,这个新的属性可以让js在浏览器中以非阻塞的模式加载,另外script还有一个defer属性,这个属性目前所有浏览器都已实现(除了firefox和chrome的早期版本),IE这方面做得好,从一开始就支持些属性. 复制代码 代码如下: //async <script async src="dquery.js" async></script> //defer <script async src="dq

【JavaScript】script标签的属性

Script标签当中,除了一些我们经常使用的属性外,它他还有一些更为特殊 的属性. 1.defer属性,这是一个不用设置属性值的属性. 下面通过两段程序代码来说明defer属性: 代码A: aaa <script language="javascript"> document.write("bbb"); </script> ccc 代码B: aaa <script language="javascript" defe