有些人可以帮我弄清楚为什么我的JavaScript HTML模板不会自动更新时间,但常规的HTML呢?下面是我使用的模板库:https://github.com/blueimp/JavaScript-Templates制作自动更新,Facebook风格的时间格式
这里是我的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
@Musa谢谢,你有关于setInterval问题的建议吗? –