From: https://www.google.com/accounts/o8/id?id=AItOawmK9HFqQh4HBRfrRONxYE22cglDFTfFbaw Date: Wed, 13 Jul 2011 06:03:51 +0000 (-0400) Subject: generalize fixLinks to handle #anchors X-Git-Url: http://git.tremily.us/?p=ikiwiki.git;a=commitdiff_plain;h=032823e45267b6ecf2b83ce39438b3dcad73cb67 generalize fixLinks to handle #anchors --- diff --git a/doc/tips/JavaScript_to_add_index.html_to_file:_links.mdwn b/doc/tips/JavaScript_to_add_index.html_to_file:_links.mdwn index a11c807e8..250bb26af 100644 --- a/doc/tips/JavaScript_to_add_index.html_to_file:_links.mdwn +++ b/doc/tips/JavaScript_to_add_index.html_to_file:_links.mdwn @@ -36,4 +36,28 @@ This can be placed in `page.tmpl`: ... -This script has not been extensively tested. \ No newline at end of file +This script has not been extensively tested. + +--- + +A version that handles anchors: + + + function fixLinks() { + var scheme = location.protocol; + if (scheme != "file:") return; + var links = document.getElementsByTagName("a"); + for (var i = links.length; --i >= 0; ) { + var link = links[i]; + var href = link.href; + var anchor = ""; + var anchorIndex = href.indexOf("#"); + if (anchorIndex != -1) { + anchor = href.substring(anchorIndex); + href = href.substring(0, anchorIndex); + }; + var hlen = href.length; + if (hlen > 0 && link.protocol==scheme && href.charAt(hlen-1) == "/") + links[i].href = href + "index.html" + anchor; + } + }