Sha256: 246fa7e0dc09ec4d62244de532d9f99965a152091b72c09227930992441bd369

Contents?: true

Size: 1.55 KB

Versions: 57

Compression:

Stored size: 1.55 KB

Contents

class AMALayout.DropDown
  constructor: (@menuDropDown, @pointerUp, @dropdowncontainer, @dropdownClose, @html) ->
    @setupDropDown()

  hideMenu = (element) ->
    element.animate {opacity:0}, 0,
      -> element.removeClass("show").addClass("hide")

  showMenu = (element, heightoffset) ->
    element.toggleClass("show hide").css top: heightoffset
    element.animate {opacity:1}, 0

  setupDropDown: ->
    ishovered = false
    @menuDropDown.mouseenter =>
      if !ishovered
        heightoffset = @dropdowncontainer.outerHeight() + 10
        datavalue = @menuDropDown.attr("data-dropdown")
        @menuDropDown.toggleClass("open closed")
        showMenu $(datavalue), heightoffset
        ishovered = true

    @html.mouseleave =>
      datavalue = @menuDropDown.attr("data-dropdown")
      @menuDropDown.removeClass("open").addClass("closed")
      hideMenu $(datavalue)
      ishovered = false

    $(document).bind 'mouseup', (event) =>
      container = $(".menu-profile, .dropdown-link")
      if ishovered and container.has(event.target).length is 0
        datavalue = @menuDropDown.attr("data-dropdown")
        @menuDropDown.removeClass("open").addClass("closed")
        hideMenu $(datavalue)
        ishovered = false

    @dropdownClose.bind 'mouseup', (event) =>
      if ishovered
        datavalue = @menuDropDown.attr("data-dropdown")
        @menuDropDown.removeClass("open").addClass("closed")
        hideMenu $(datavalue)
        ishovered = false

    color = @pointerUp.parent().css("background-color")
    @pointerUp.css
      "border-bottom-color" : color

Version data entries

57 entries across 57 versions & 1 rubygems

Version Path
ama_layout-3.2.2 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-3.2.1 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-3.2.0 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-3.1.3 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-3.1.1 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-3.1.0 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-3.0.0 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-2.9.2 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-2.9.1 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-2.9.0 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-2.8.0 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-2.7.0 app/assets/javascripts/ama_layout/desktop/drop_down.coffee
ama_layout-2.6.0 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.5.0 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.4.5 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.4.4 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.4.3 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.4.2 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.4.1 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee
ama_layout-2.4.0 app/assets/javascripts/ama_layout/desktop/drop_down.js.coffee