menu.coffee 565 B

123456789101112131415161718192021222324
  1. class app.views.Menu extends app.View
  2. @el: '._menu'
  3. @activeClass: 'active'
  4. @events:
  5. click: 'onClick'
  6. init: ->
  7. $.on document.body, 'click', @onGlobalClick
  8. return
  9. onClick: =>
  10. prev = @el.previousElementSibling
  11. $.remove @el
  12. @delay (=> $.after prev, @el), 200
  13. return
  14. onGlobalClick: (event) =>
  15. return if event.which isnt 1
  16. if event.target.hasAttribute?('data-toggle-menu')
  17. @toggleClass @constructor.activeClass
  18. else if @hasClass @constructor.activeClass
  19. @removeClass @constructor.activeClass
  20. return