Benutzer:Lustiger seth/section jumpers.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/*
task: add up/down arrows at the end of each major section title (h2, h3)
      in order to jump to previous or next section respectively
tested in firefox only
*/
$(function (){
	const h_elems = document.getElementById("mw-content-text").querySelectorAll("h2, h3");
	const arr = Array.from(h_elems);
	for(let i = 1; i < arr.length; ++i){
		arr[i].style.display = "flex";
		arr[i].style.flexFlow = "row wrap";
		if(arr[i].getElementsByClassName("mw-headline").length > 0){
			arr[i].getElementsByClassName("mw-headline")[0].style.width = "74%";
			if(arr[i].getElementsByClassName("mw-editsection").length > 0){
				arr[i].getElementsByClassName("mw-editsection")[0].style.width = "20%";
			}
			let append_nav = '<span style="text-align:right; width:3%"> ';
			if(i - 1 > 0){
				append_nav += '<a href="#' + arr[i - 1].childNodes[0].id + '">↑</a>';
			}
			if(i + 1 < arr.length){
				append_nav += '<a href="#' + arr[i + 1].childNodes[0].id + '">↓</a>';
			}
			arr[i].innerHTML += append_nav + "</span>";
		}
	}
});