0
我有這個來源,寫的時間以前。 (我用的jQuery插件TIMEAGO)jQuery timeago並不總是工作
<script>
$(document).ready(function() {
$("abbr.timeago").timeago();
});
function timeago(time) {
isoTime = new Date();
isoTime.setTime(time);
return "<abbr class='timeago' title='"+isoTime.toISOString()+"'></abbr>";
}
function add() {
$('#ex').append(timeago(time));
}
</script>
當我嘗試打電話add()
功能,它並不總是可行的。
這是做工不錯:
<script>
add();
</script>
但是當我嘗試從一個按鈕來調用它,它不行:
<button onclick='add()'>button</button>
我認爲它不工作,因爲這條線$("abbr.timeago").timeago();
無法讀取我添加的新的<abbr>
。 (也許它只能讀取<abbr>
之前添加的此行$("abbr.timeago").timeago();
行爲)
某人有一個想法如何解決它?
你定義'time'正接受從add()中傳遞給timeago()? – 2014-12-04 08:19:24
嗨@HartSimha感謝您的幫助!但是,這不是問題。 – ldoroni 2014-12-04 08:23:22
如果您依靠單擊按鈕將具有類'timeago'的元素插入到DOM中,則此元素將不會在執行'$(「abbr.timeago」)。timeago();'的位置存在。 ..'$(「abbr.timeago」)。timeago();'將在頁面加載時執行,因此不會定位任何元素,除非頁面加載頁面上已經有「abbr.timeago」 – 2014-12-04 08:48:54