summaryrefslogtreecommitdiff
path: root/_includes/scripts/aside/affix.js
diff options
context:
space:
mode:
authorKarl Hallsby <karl@hallsby.com>2020-09-27 17:45:13 -0500
committerKarl Hallsby <karl@hallsby.com>2020-09-27 17:45:13 -0500
commitc6bf5f7c895287d2028f6024265913b59784a154 (patch)
tree3a298df17d9472a679411dd81ea00a1239652477 /_includes/scripts/aside/affix.js
parent50dafcddc0392b99b228824274b1b97d0e72e423 (diff)
Bring all of jekyll-text-theme _includes into site
Diffstat (limited to '_includes/scripts/aside/affix.js')
-rw-r--r--_includes/scripts/aside/affix.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/_includes/scripts/aside/affix.js b/_includes/scripts/aside/affix.js
new file mode 100644
index 0000000..1db3b8e
--- /dev/null
+++ b/_includes/scripts/aside/affix.js
@@ -0,0 +1,26 @@
+(function() {
+ var SOURCES = window.TEXT_VARIABLES.sources;
+ window.Lazyload.js(SOURCES.jquery, function() {
+ var $window = $(window), $pageFooter = $('.js-page-footer');
+ var $pageAside = $('.js-page-aside');
+ var affix;
+ var tocDisabled = false;
+ var hasSidebar = $('.js-page-root').hasClass('layout--page--sidebar');
+
+ affix = $pageAside.affix({
+ offsetBottom: $pageFooter.outerHeight(),
+ scrollTarget: hasSidebar ? '.js-page-main' : null,
+ scroller: hasSidebar ? '.js-page-main' : null,
+ scroll: hasSidebar ? $('.js-page-main').children() : null,
+ disabled: tocDisabled
+ });
+
+ $window.on('resize', window.throttle(function() {
+ affix && affix.setOptions({
+ disabled: tocDisabled
+ });
+ }, 100));
+
+ window.pageAsideAffix = affix;
+ });
+})();