mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-26 20:56:48 +00:00
16 lines
674 B
CoffeeScript
16 lines
674 B
CoffeeScript
Darkswarm.directive "ofnSmoothScrollTo", ($location, $document)->
|
|
# Onclick sets $location.hash to attrs.ofnScrollTo
|
|
# Then triggers $document.scrollTo
|
|
restrict: 'A'
|
|
link: (scope, element, attrs)->
|
|
element.bind 'click', (ev)->
|
|
ev.stopPropagation()
|
|
$location.hash attrs.ofnScrollTo
|
|
target = $("a[name='#{attrs.ofnSmoothScrollTo}']")
|
|
# Scrolling is confused by our position:fixed top bar and page alert bar
|
|
# - add an offset to scroll to the correct location, plus 5px buffer
|
|
offset = $("nav.top-bar").height()
|
|
offset += $(".page-alert.move-down").height()
|
|
offset += 5
|
|
$document.scrollTo target, offset, 1000
|