Benutzer:Ce2/JavaScript/linktags devel.js
aus Wikipedia, der freien Enzyklopädie
< Benutzer:Ce2 | JavaScript
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
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
/*******************************/
/* Einige link-Tags hinzufügen */
/*******************************/
/* Hilfsfunktion: Dekodieren von UTF8 */
function decode_utf8(text)
{
decoded = '';
var tail = 0;
var codepoint;
for (var i = 0; i < text.length; ++i)
{
var charcode = text.charCodeAt(i);
if (tail != 0)
{
codepoint = (codepoint << 6) + (charcode & 0x3f);
--tail;
if (tail == 0)
decoded += String.fromCharCode(codepoint);
}
else
{
if (charcode < 0x80)
decoded += String.fromCharCode(charcode);
else
{
var tail = 1; // number of following 10xxxxxx values
while ((charcode & (0x40 >> tail)) != 0)
++tail;
codepoint = charcode & ((0x80 >> tail) - 1)
}
}
}
return decoded
}
var linktags_head = document.getElementsByTagName('head')[0]
function linktags_verlinke(rel, href, title)
{
var link = document.createElement('link')
link.rel = rel
link.href = '/wiki/' + href
link.title = title
linktags_head.appendChild(link)
}
function linktags_verlinke_anker(rel, anchor)
{
link = document.createElement('link')
link.rel = rel
link.href = anchor.href
link.title = anchor.text
linktags_head.appendChild(link)
}
/* decodiere die codierten UTF8-Zeichen in Kapitel-Ankern */
function linktags_decodeanchor(anchorname)
{
var escaped = anchorname.replace(/\.([0-9A-F][0-9A-F])/g,"%$1");
return decode_utf8(unescape(escaped)).replace(/_/g,' ');
}
/* Füge Link-Tags fürs Inhaltsverzeichnis hinzu */
function linktags_addcontents()
{
var len = document.anchors.length
for (i = 0; i < len; ++i)
{
var anchor = document.anchors[i];
var link = document.createElement('link')
link.rel = 'chapter'
link.href = '#' + anchor.name;
link.title = linktags_decodeanchor(anchor.name);
linktags_head.appendChild(link)
}
}
/* prev/next-Navigation in diffs */
function linktags_prevnext()
{
var prevlink = document.getElementById('differences-prevlink');
if (prevlink)
linktags_verlinke_anker('prev', prevlink);
var nextlink = document.getElementById('differences-nextlink');
if (nextlink)
linktags_verlinke_anker('next', nextlink);
}
function addLinktags()
{
if (linktags_head) /* sollte immer true ergeben, aber sicher ist sicher */
{
linktags_verlinke('start', 'Hauptseite', 'Hauptseite');
linktags_verlinke('help', 'Wikipedia:Handbuch', 'Handbuch');
linktags_verlinke('index', 'Spezial:Allpages', 'Index');
linktags_addcontents();
linktags_prevnext();
}
}
$(addLinktags);