Inhaltsverzeichnisse

Vorlage für HTML-Seite mit Formeln und Inhaltsverzeichnis

<script type="text/javascript" asyncsrc="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML"></script>
<div id="toc">        <h3>Inhaltsverzeichnis</h3>    </div>    <hr/><div id="contents">
Inhalt
</div><script>
    var toc = "";    var level = 0;
    document.getElementById("contents").innerHTML =        document.getElementById("contents").innerHTML.replace(            /<h([\d])>([^<]+)<\/h([\d])>/gi,            function (str, openLevel, titleText, closeLevel) {                if (openLevel != closeLevel) {                    return str;                }
                if (openLevel > level) {                    toc += (new Array(openLevel - level + 1)).join("<ul>");                } else if (openLevel < level) {                    toc += (new Array(level - openLevel + 1)).join("</ul>");                }
                level = parseInt(openLevel);
                //Hinzufügen eines Namens in den Überschriften-Tags                       var anchor = titleText.replace(/ /g, "_");                toc += "<li><a href=\"#" + anchor + "\">" + titleText                    + "</a></li>";
                return "<h" + openLevel + "><a name=\"" + anchor + "\">"                    + titleText + "</a></h" + closeLevel + ">";            }        );
    //Ende der Liste if (level) {        toc += (new Array(level + 1)).join("</ul>");    }
    //Inhaltsverzeichnis wird geschrieben document.getElementById("toc").innerHTML += toc;
</script>