0
我有這個問題,當我點擊錨,該頁面重新加載,這是我想避免,即使我使用pushstate:true
BackboneJS pushState的防止頁面重載
所以,我main.js裏面我有:
Backbone.history.start({ pushState: true, root: App.ROOT });
$(document).on('click', 'a:not([data-bypass])', function (evt) {
var href = $(this).attr('href');
if (href && href.indexOf('#') === 0) {
evt.preventDefault();
Backbone.history.navigate(href, true);
}
});
所以,我試圖改變它像這裏提到的Preventing full page reload on Backbone pushState - 但沒有成功。
我使用BackboneJS
,NodeJS
和HandlebarsJS
是否有任何解決這個?
當我在'if'語句之前加上'evt.preventDefault()'也不會幫助!?: -/ – Steve 2014-09-25 12:49:01
不確定你的意思是沒有幫助,但是在'if'' evt之前.preventDefault()'實際上可以防止任何鏈接像鏈接一樣工作,即不會將您帶到鏈接頁面,如果您使用javascript處理該操作,則這就是您想要的。您鏈接到的答案實際上也很棒,它還檢查鏈接是否是外部鏈接,並且只阻止鏈接加載內部鏈接。 – Yura 2014-09-25 14:12:56
'evt.preventDefault()'的基礎知識:http://jsfiddle.net/yuraji/mesdtnpq/ – Yura 2014-09-25 14:16:25