我正在使用下面的代碼來加載兩個underscore.js模板。點擊第一個鏈接後,加載框架模板。第一個觸發器執行find bind,它正確地執行loadBookmarks函數,但'loaded'觸發器永遠不會觸發並且loadFriendBookmarks永遠不會執行。爲什麼是這樣?是否有另一種方法來實現這一點?爲什麼jQuery的這些嵌套觸發器不起作用?
$('#bookmarks-link').click(function() {
$('#bookmarks-count').text("0");
var skeleton = modalTemplate();
$('#bookmarks').append(skeleton);
$('#bookmarks').trigger('skeleton');
});
$('#bookmarks').bind('skeleton', function() {
$('#bookmarks .thumbnails').loadBookmarks(getBookmarksUrl(1));
// If I add an alert('hi') here, it works perfectly.
$('#bookmarks').trigger('loaded');
});
$('#bookmarks').bind('loaded', function() {
$('#bookmarks .thumbnails a').each(function() {
$(this).bind('click', function() {
$('#bookmarks .bookmarks-table tbody').empty();
$('#bookmarks .bookmarks-table tbody').loadFriendBookmarks(
getFriendBookmarksUrl($(this).attr('data-item'))
);
});
});
});
所以足夠有趣,觸發器都正常工作:如果我在loadBookmarks和觸發之間堅持一個警告,一切工作正常。如果我把它拿出來,那麼它不會。任何想法爲什麼?
這正是我所期待的!非常感謝! – ArKi