From 092abe8ffc71e634ae95a460380b6a4f57027684 Mon Sep 17 00:00:00 2001 From: Johannes Ranke Date: Fri, 6 Nov 2020 00:12:29 +0100 Subject: Update benchmarks for dev version --- .../anchor-sections-1.0/anchor-sections.js | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 docs/dev/articles/web_only/benchmarks_files/anchor-sections-1.0/anchor-sections.js (limited to 'docs/dev/articles/web_only/benchmarks_files/anchor-sections-1.0/anchor-sections.js') diff --git a/docs/dev/articles/web_only/benchmarks_files/anchor-sections-1.0/anchor-sections.js b/docs/dev/articles/web_only/benchmarks_files/anchor-sections-1.0/anchor-sections.js new file mode 100644 index 00000000..570f99a0 --- /dev/null +++ b/docs/dev/articles/web_only/benchmarks_files/anchor-sections-1.0/anchor-sections.js @@ -0,0 +1,33 @@ +// Anchor sections v1.0 written by Atsushi Yasumoto on Oct 3rd, 2020. +document.addEventListener('DOMContentLoaded', function() { + // Do nothing if AnchorJS is used + if (typeof window.anchors === 'object' && anchors.hasOwnProperty('hasAnchorJSLink')) { + return; + } + + const h = document.querySelectorAll('h1, h2, h3, h4, h5, h6'); + + // Do nothing if sections are already anchored + if (Array.from(h).some(x => x.classList.contains('hasAnchor'))) { + return null; + } + + // Use section id when pandoc runs with --section-divs + const section_id = function(x) { + return ((x.classList.contains('section') || (x.tagName === 'SECTION')) + ? x.id : ''); + }; + + // Add anchors + h.forEach(function(x) { + const id = x.id || section_id(x.parentElement); + if (id === '') { + return null; + } + let anchor = document.createElement('a'); + anchor.href = '#' + id; + anchor.classList = ['anchor-section']; + x.classList.add('hasAnchor'); + x.appendChild(anchor); + }); +}); -- cgit v1.2.1