Line 61: | Line 61: | ||
}); | }); | ||
− | + | // The function actually applying the offset | |
− | + | function offsetAnchor() { | |
+ | if (location.hash.length !== 0) { | ||
+ | window.scrollTo(window.scrollX, window.scrollY - 100); | ||
+ | } | ||
+ | } | ||
− | + | // Captures click events of all <a> elements with href starting with # | |
− | + | $(document).on('click', 'a[href^="#"]', function(event) { | |
+ | // Click events are captured before hashchanges. Timeout | ||
+ | // causes offsetAnchor to be called after the page jump. | ||
+ | window.setTimeout(function() { | ||
+ | offsetAnchor(); | ||
+ | }, 0); | ||
+ | }); | ||
− | + | // Set the offset when entering page with hash present in the url | |
− | + | window.setTimeout(offsetAnchor, 0); | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
</script> | </script> |
Revision as of 19:20, 13 October 2018