Wenn ein Nicht-Techie beabsichtigt, mit einem CMS-WYSIWYG-Editor längere Texte zu schreiben, macht es Sinn, etwas für die Navigation innerhalb des Dokuments zu tun. Neben (ggf. mitscrollenden) Inhaltsverzeichnissen lohnen sich da vor allem Sprunglinks innerhalb des Texts und je nachdem wie Nicht der Nicht-Technie ist, bietet es sich durchaus an, entsprechende Links mittels Javascript automatisch einzufügen. Um das etwas zu vereinfachen, habe ich mir eine entsprechende Mootools-Klasse gebastelt – wenn ich in Zukunft zum Beispiel über jeder H2-Überschrift Sprunglinks haben will, reicht dieser kleine Schnipsel:

window.addEvent('domready', function(){
	new Autolinks('h2');
});

Das Ergebnis sieht dann so aus. Mit den Autolinks kann man einen immergleichen Link über, unter oder in einem oder mehreren beliebigen Elementen platzieren. Den Link kann man natürlich anpassen. Ein Aufruf mit allen Schikanen (und den Standardwerten) sieht so aus:

new Autolinks('h2', {
	where: 'before',
	options: {
		href: '#seitenanfang',
		html: 'Zum Seitenanfang'
	},
	wrapper: {
		tag: 'p',
		options: {
			'class': 'autolink'
		}
	}
});

Das sollte für den geneigten Mootooler eigentlich selbsterklärend sein. Wichtig ist vielleicht nur, dass man wrapper, wenn man kein den Link umschließendes Element braucht, auch auf false setzen kann. Andernfalls gehören hier ein Tag und Optionen hin. Die möglichen Werte bei where sind die gleichen wie bei Element.inject. Statt mit einem CSS-Selektor kann man die Autolinks bei Bedarf auch direkt mit Elementen füttern:

window.addEvent('domready', function(){
	new Autolinks($$('h2'));
});

Das Ganze ist zwar nur eine Kleinigkeit, aber zumindest ich brauche diese Funktion letztens oft genug, dass es sich lohnte, daraus eine anständige Klasse zu machen.