From b29e121113a588d88b3d8f4265bece2c5e997cef Mon Sep 17 00:00:00 2001 From: Mario Date: Thu, 25 Feb 2021 12:55:19 +0000 Subject: replace sticky_kit with a simpler homwgrown solution (still a bit raw) and slightly change the way we load new content so that people with a long aside column do not have to scroll all the way to the bottom for loading the next page --- view/js/main.js | 4 ++-- view/js/mod_help.js | 18 ++++++++---------- 2 files changed, 10 insertions(+), 12 deletions(-) (limited to 'view/js') diff --git a/view/js/main.js b/view/js/main.js index cd95a8a0b..0c48c8b18 100644 --- a/view/js/main.js +++ b/view/js/main.js @@ -1563,7 +1563,7 @@ function zFormError(elm,x) { $(window).scroll(function () { if(typeof buildCmd == 'function') { // This is a content page with items and/or conversations - if($(window).scrollTop() + $(window).height() > $(document).height() - 500) { + if($(window).scrollTop() + $(window).height() > $('#conversation-end').position().top) { if((pageHasMoreContent) && (! loadingPage)) { next_page++; scroll_next = true; @@ -1574,7 +1574,7 @@ $(window).scroll(function () { } else { // This is some other kind of page - perhaps a directory - if($(window).scrollTop() + $(window).height() > $(document).height() - 500) { + if($(window).scrollTop() + $(window).height() > $('#page-end').position().top) { if((pageHasMoreContent) && (! loadingPage) && (! justifiedGalleryActive)) { next_page++; scroll_next = true; diff --git a/view/js/mod_help.js b/view/js/mod_help.js index 107845c04..9c3591498 100644 --- a/view/js/mod_help.js +++ b/view/js/mod_help.js @@ -14,7 +14,7 @@ toc = {}; $(document).ready(function () { // Generate the table of contents in the side nav menu (see view/tpl/help.tpl) $('#doco-top-toc').toc({content: "#doco-content", headings: "h3,h4,h5,h6"}); - + $(".doco-section").find('a').each(function () { var url = document.createElement('a'); url.href = window.location; @@ -31,8 +31,6 @@ $(document).ready(function () { } }); - $(document.body).trigger("sticky_kit:recalc"); - toc.contentTop = []; toc.edgeMargin = 20; // margin above the top or margin from the end of the page toc.topRange = 200; // measure from the top of the viewport to X pixels down @@ -72,7 +70,7 @@ $(document).ready(function () { location.replace(newref) } - + // Determine language translations available from the language selector menu itself var langChoices = []; $('.lang-selector').find('.lang-choice').each(function (idx, a) { @@ -89,7 +87,7 @@ $(document).ready(function () { pathParts.push(help_language); pick_me = false; if($.inArray(path[i], langChoices) < 0) { - i--; + i--; } } } else { @@ -97,20 +95,20 @@ $(document).ready(function () { pathParts.push(path[i]); } } - + } // Update the address bar to reflect the loaded language window.history.replaceState({}, '', '/' + pathParts.join('/')); - + // Highlight the language in the language selector that is currently viewed $('.lang-selector').find('.lang-choice:contains("' + help_language + '")').addClass('active'); - + // Construct the links to the available translations based and populate the selector menu $('.lang-selector').find('.lang-choice').each(function (idx, a) { var langLink = []; for (var i = 0; i < pathParts.length; i++) { - + if(i === 1) { langLink.push($(a).html()); } else { @@ -120,5 +118,5 @@ $(document).ready(function () { } $(a).attr('href', '/' + langLink.join('/')); }); - + }); -- cgit v1.2.3