Sha256: 9fb9ce11f68a8a36d3f3fa203dd456a71cc1e170350e27bcb576432cf0c5bfc2
Contents?: true
Size: 785 Bytes
Versions: 4
Compression:
Stored size: 785 Bytes
Contents
#= require partystreusel/base #= require partystreusel/scroll_to class Accordion extends Partystreusel.Base @className = 'Accordion' constructor: (el) -> super @$el.find('.accordion__title').on 'click', @toggleItem @items = @$el.find('.accordion__item') @offset = @$el.data('scroll-offset') toggleItem: (e) => item = $(e.target).closest('.accordion__item') currentOpen = item.hasClass('accordion__item--open') @items.filter('.accordion__item--open').each (_, i) => @trigger('close', $(i)) @items.removeClass('accordion__item--open') unless currentOpen item.toggleClass('accordion__item--open') @trigger('open', item) e.preventDefault() Partystreusel.scrollTo(item, @offset) Partystreusel.Accordion = Accordion
Version data entries
4 entries across 4 versions & 1 rubygems