User:Fetchcomms/lefteditlinks.js

// Stolen from w:User:Drilnoth/lefteditlinks.js $( function { // user customizable variables via monobook.js: // font-size css definition for edit link span   var leftEditLinkFontSize = leftEditLinkFontSize || 'small'; // css definition for spacing after heading text span    var leftEditLinkSpacing = leftEditLinkSpacing || '0.2em'; // recursively fix all spans inside headings    var content = document.getElementById('content');    var LeftEditLink = function(level) { // get all heading of this level        var headings = content.getElementsByTagName('h' + level);        for (var i = 0; i < headings.length; i ++) {            var heading = headings[i]; // get edit span            var editSpan = heading.firstChild;            if (editSpan == null) { continue }            if (editSpan.className != 'editsection') { continue } // get blank            var blank = editSpan.nextSibling;            if (blank == null) { continue }            if (blank.nodeValue != ' ') { continue } // get heading span var headingSpan = blank.nextSibling; if (headingSpan == null) { continue } if (headingSpan.nodeName != 'SPAN') { continue } // move blank after heading text heading.appendChild(blank); // move edit span after blank heading.appendChild(editSpan); // get rid of evil edit span floating editSpan.style.styleFloat = 'none'; editSpan.style.cssFloat = 'none'; // set edit span font size editSpan.style.fontSize = leftEditLinkFontSize; // set heading span right margin headingSpan.style.marginRight = leftEditLinkSpacing; } // recurse through heading levels if (level < 6) { LeftEditLink(level + 1); }       return; }; // call recursive function LeftEditLink(1); });