diff options
| author | jpl | 2017-02-01 16:14:30 +0100 |
|---|---|---|
| committer | jpl | 2017-02-01 16:14:30 +0100 |
| commit | ceda184737c3943da2a13fb8eeb85110ce5506e2 (patch) | |
| tree | fc1de8d0f418dcc9b6af7a403eaf01bba947b7cb /app/assets/javascripts | |
| parent | 7228577b5d5505fadb385800b5188a9d239b71b6 (diff) | |
| download | chouette-core-ceda184737c3943da2a13fb8eeb85110ce5506e2.tar.bz2 | |
Refs #2482: adding sticky behavior for main top nav
Diffstat (limited to 'app/assets/javascripts')
| -rw-r--r-- | app/assets/javascripts/main_menu.coffee | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/app/assets/javascripts/main_menu.coffee b/app/assets/javascripts/main_menu.coffee index 91b714fcf..cdc1654c5 100644 --- a/app/assets/javascripts/main_menu.coffee +++ b/app/assets/javascripts/main_menu.coffee @@ -1,10 +1,36 @@ @mainmenu = -> $('#main_nav').each -> + # Opening/closing left-side menu $(this).on 'click', '.openMenu', (e) -> $(this).parent().addClass 'open' $(this).on 'click', '.closeMenu', (e) -> - console.log('pouet') $(this).closest('.nav-menu').removeClass 'open' + # Sticky behavior + toStick = $('.page_header') + limit = toStick.outerHeight() - 33 + + console.log limit + + stickyContent = '<div class="sticky-content">' + stickyContent += '<div class="sticky-ptitle">' + $(".page-title").html() + '</div>' + stickyContent += '<div class="sticky-paction">' + $(".page-action").html() + '</div>' + stickyContent += '</div>' + + $(document).on 'scroll', -> + if $(window).scrollTop() >= limit + $('body').addClass 'has-sticky' + $('#main_nav').addClass 'sticky' + + if $('#menu_top').find('.sticky-content').length == 0 + $('#menu_top').children('.menu-content').after(stickyContent) + + else + $('body').removeClass 'has-sticky' + $('#main_nav').removeClass 'sticky' + + if $('#menu_top').find('.sticky-content').length > 0 + $('.sticky-content').remove() + $(document).on 'ready turbolinks:load', mainmenu |
