我在一個Spine.js控制器CoffeeScript中定義的事件,像這樣:停止超鏈接事件在Spine.js
class Charter extends Spine.Controller
events:
'tap #update': 'update'
constructor: (params) ->
super
update: (e) ->
dosomething()
false
當#UPDATE點擊鏈接,更新函數被調用,但鏈接也被激活並將瀏覽器指向URL。
我試過e.preventDefault(),e.stopPropagation(),並返回false無濟於事。 事件似乎是正確的形成,當前目標是#update鏈接,所以我想知道它是否是Spine處理事件的唯一方式(我在Backbone.js中沒有這個問題)
你有沒有在* dosomething()之前嘗試'e.preventDefault()'*?如果它拋出一個錯誤,你可能永遠不會得到回報。 –
是的,我試過'e.preventDefault()'和'e.stopPropagation'作爲更新方法沒有任何運氣的第一件事。 – djlumley
即使我除了嘗試停止事件之外沒有在更新方法中執行其他任何操作,我仍會將其指向新頁面。 控制檯日誌顯示每次都會調用更新方法。 – djlumley