From 247ccfdfff67e810cb8f2d5d171807383460c9c0 Mon Sep 17 00:00:00 2001 From: Andreas Deininger Date: Tue, 7 Mar 2023 13:04:03 +0100 Subject: [PATCH] Drop AnchorJS in favor of Hugo markdown render hook (#1460) --- assets/js/anchor.js | 49 -------------------- layouts/_default/_markup/render-heading.html | 3 ++ layouts/partials/scripts.html | 3 +- 3 files changed, 4 insertions(+), 51 deletions(-) delete mode 100644 assets/js/anchor.js create mode 100644 layouts/_default/_markup/render-heading.html diff --git a/assets/js/anchor.js b/assets/js/anchor.js deleted file mode 100644 index 9d8a0e6784..0000000000 --- a/assets/js/anchor.js +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright 2018 Google LLC - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - https://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -(function ($) { - 'use strict'; - - // Headers' anchor link that shows on hover - $(function () { - // append anchor links to headings in markdown. - var article = document.getElementsByTagName('main')[0]; - if (!article) { - return; - } - var headings = article.querySelectorAll('h1, h2, h3, h4, h5, h6'); - headings.forEach(function (heading) { - if (heading.id) { - var a = document.createElement('a'); - // set visibility: hidden, not display: none to avoid layout change - a.style.visibility = 'hidden'; - // [a11y] hide this from screen readers, etc.. - a.setAttribute('aria-hidden', 'true'); - // material insert_link icon in svg format - a.innerHTML = ' '; - a.href = '#' + heading.id; - heading.insertAdjacentElement('beforeend', a); - heading.addEventListener('mouseenter', function () { - a.style.visibility = 'initial'; - }); - heading.addEventListener('mouseleave', function () { - a.style.visibility = 'hidden'; - }); - } - }); - }); - -}(jQuery)); diff --git a/layouts/_default/_markup/render-heading.html b/layouts/_default/_markup/render-heading.html new file mode 100644 index 0000000000..1ff23d72b1 --- /dev/null +++ b/layouts/_default/_markup/render-heading.html @@ -0,0 +1,3 @@ +{{ .Text | safeHTML }} + + \ No newline at end of file diff --git a/layouts/partials/scripts.html b/layouts/partials/scripts.html index 8e1d386ceb..a067f0f12c 100644 --- a/layouts/partials/scripts.html +++ b/layouts/partials/scripts.html @@ -64,7 +64,6 @@ {{ $jsBs := resources.Get "vendor/bootstrap/dist/js/bootstrap.bundle.js" -}} {{ $jsBase := resources.Get "js/base.js" -}} -{{ $jsAnchor := resources.Get "js/anchor.js" -}} {{ $jsSearch := resources.Get "js/search.js" | resources.ExecuteAsTemplate "js/search.js" .Site.Home -}} {{ $jsMermaid := resources.Get "js/mermaid.js" | resources.ExecuteAsTemplate "js/mermaid.js" . -}} {{ $jsMarkmap := resources.Get "js/markmap.js" | resources.ExecuteAsTemplate "js/markmap.js" . -}} @@ -74,7 +73,7 @@ {{ $jsSearch = resources.Get "js/offline-search.js" -}} {{ end -}} -{{ $jsArray := slice $jsBs $jsBase $jsAnchor $jsSearch $jsPlantuml $jsMarkmap $jsDrawio -}} +{{ $jsArray := slice $jsBs $jsBase $jsSearch $jsPlantuml $jsMarkmap $jsDrawio -}} {{ if $needmermaid -}} {{ $jsArray = $jsArray | append $jsMermaid -}}