我相信我的标题几乎解释了我希望实现的目标,我有一个主干 View ,其中一个事件通过 view.remove() 自行删除
更准确地说:
class Project.Views.MemberView extends Backbone.View
template: JST['members/member_view']
events:
'click .destroy-member': 'removeMember'
initialize: ->
_.bindAll(this, "render")
render: ->
$(@el).html(@template(member: @model))
this
removeMember: ->
@model.destroy
data:
collective_id: gon.collective.id
contentType: 'application/json'
success: =>
@remove() #view.remove() called here
对 view.remove() 的调用效果很好并且符合预期,但是它会立即从 DOM 中删除元素(View),我认为这不是很好的用户体验。
我需要知道的是,是否有办法用 Jquery fadeOut() 来包装或链接这个对 view.remove() 的调用。我认为这将大大改善用户体验。
这可能吗?
干杯!
最佳答案
为什么不在删除之前调用 fadeOut 呢?我不熟悉 CoffeeScript ,但在调用模型销毁之前,只需执行以下操作:
removeMember: ->
// whatever el you want to remove, just fade it out. from your code maybe its $(@el) ?:
@model.destroy
data:
collective_id: gon.collective.id
contentType: 'application/json'
success: =>
$(@el).fadeOut()
关于jquery - 使用 Backbone.js View remove() 方法和 jQuery 的 fadeOut(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16570261/