Benutzer:Wiegels/test.js

aus Wikipedia, der freien Enzyklopädie

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
function firstNotEmptyNode(node) {
  while (node && node.nodeName=='#text' && node.nodeValue.match(/^\s*$/)) {
    var nextNode = node.nextSibling;
    node.parentNode.removeChild(node);
    node = nextNode;
    }
  return node;
  }

addOnloadHook(
  function() {
    if (wgNamespaceNumber%2==1) {
      var contentNode = document.getElementById('content');
      var mode = false;
      var count = 0;
      while (true) {
        var nodeName = (mode ? 'DD' : 'DL');
        var nodes = contentNode.getElementsByTagName(nodeName);
        if (!mode)
          if (nodes.length==count)
            break;
          else
            count = nodes.length;
        for (var number = nodes.length-1; number>=0; number--) {
          var node = nodes[number];
          var nextNode = firstNotEmptyNode(node.nextSibling);
          if (nextNode && nextNode.nodeName==nodeName) {
            var firstNode = firstNotEmptyNode(nextNode.firstChild);
            if (firstNode &&
              (nextNode.nodeName=='DD' && firstNode.nodeName=='DL' ||
              firstNode.nodeName=='DD')) {
              while (firstNode) {
                node.appendChild(nextNode.removeChild(firstNode));
                firstNode = firstNotEmptyNode(nextNode.firstChild);
                }
              node.parentNode.removeChild(nextNode);
              }
            }
          }
        mode = !mode;
        }
      }
    }
  );