Sha256: d7aea5155e484da2f3a45574316076667d3a4e33b91fa0b8170e6a453185fcb1

Contents?: true

Size: 1.15 KB

Versions: 52

Compression:

Stored size: 1.15 KB

Contents

require '../vendor/jquery.menuaim.js'

class Smock.CategoryDropdown
  constructor: () ->
    @$dropdown = $('.category-dropdown')
    @$categories = $('.category-dropdown__categories', @$dropdown)
    @$top_level = $('.category-dropdown__categories__list', @$dropdown)

  ready: =>
    @$top_level.menuAim
      activate:   @activateSubmenu
      deactivate: @deactivateSubmenu
      tolerance:  850

    @setupMobileEventHandlers()

  activateSubmenu: (row) =>
    @$categories.addClass('category-dropdown__categories--expanded')

    $row      = $(row)
    submenuId = $row.data('submenuId')
    $submenu  = $("##{submenuId}")

    $submenu.css(display: 'block')
    $row.find('> a').addClass('header__categories__dropdown__top-level__link--active')

  deactivateSubmenu: (row) ->
    $row      = $(row)
    submenuId = $row.data('submenuId')
    $submenu  = $("##{submenuId}")

    $submenu.css(display: 'none')
    $row.find('> a').removeClass('header__categories__dropdown__top-level__link--active')

  # Mobile devices have the click event but not hover, so we trigger hover here
  setupMobileEventHandlers: ->
    @$top_level.on 'click', ->
      $(this).trigger('hover')

Version data entries

52 entries across 52 versions & 1 rubygems

Version Path
smock-0.1.268 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.267 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.266 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.265 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.264 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.263 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.262 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.261 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.260 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.259 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.258 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.256 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.255 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.254 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.253 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.252 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.251 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.250 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.249 app/assets/javascripts/modules/category_dropdown.coffee
smock-0.1.247 app/assets/javascripts/modules/category_dropdown.coffee