【发布时间】:2012-05-15 10:09:20
【问题描述】:
有人能帮我弄清楚为什么我的 javascript HTML 模板不会自动更新时间,而普通的 HTML 会自动更新时间吗?这是我正在使用的模板库:https://github.com/blueimp/JavaScript-Templates
这是我的 JS(你可以在这里摆弄它:http://jsfiddle.net/trpeters1/SpYXM/76/):
$(document.body).on('click', 'button', function(){
var id= $(this).data('id');
var data={id:id, string: "just now...", fxn: nicetime()};
var result = tmpl('<div id="string" data-id="'+id+'">{%=o.string%}</div><div id="function" data-id="'+id+'">{%=o.fxn%}</div>', data);
$('div[data-id="'+id+'"]').html(result);
nicetime();
});
function nicetime(){
var time = new Date(),
var comment_date = setInterval(function() {
var time2 = time_since(time.getTime()/1000);
$('#time_since').html(time2);
return time2;
},
1000);
}
HTML:
<button data-id="1">1</button>
<div data-id="1"></div> //tmpl output
<div id="time_since"></div> //non-tmpl output
【问题讨论】:
-
jquery data()函数与数据属性无关,使用attr()即可。
-
@Musa 谢谢,你对 setInterval 问题有什么建议吗?
标签: javascript templates jquery-templates mustache