To trigger toc generation more reliable.
var asciidoc = {
// toc generator
var asciidoc = {
// toc generator
- toc: function () {
- var tocholder = jQuery("#toc");
+ toc: function ($content) {
+ var tocholder = $content.find('#toc');
+
if (!tocholder) {
return;
}
if (!tocholder) {
return;
}
var html = "<div id=\"toctitle\"><h2>Contents</h2></div><ul>";
var n = 0;
var html = "<div id=\"toctitle\"><h2>Contents</h2></div><ul>";
var n = 0;
- jQuery("#asciidoccontent div.sect1").each(function(){
+ $content.find("div.sect1").each(function(){
var h = jQuery(this).find("h2").first();
var id = h.attr("id");
if (id != null) {
var h = jQuery(this).find("h2").first();
var id = h.attr("id");
if (id != null) {
- footnotes: function () {
- var noteholder = jQuery("#footnotes");
+ footnotes: function ($content) {
+ var noteholder = $content.find('#footnotes');
if (!noteholder) {
return;
}
if (!noteholder) {
return;
}
var n = 0;
var inner_html = '';
var n = 0;
var inner_html = '';
- jQuery("#asciidoccontent span.footnote").each(function(){
+ $content.find("span.footnote").each(function(){
n++;
var span = jQuery(this);
var note = span.attr("data-note");
n++;
var span = jQuery(this);
var note = span.attr("data-note");
"<div class='footnote' id='_footnote_" + n + "'>" +
"<a href='#_footnoteref_" + n + "' title='Return to text'>" +
n + "</a>. " + note + "</div>";
"<div class='footnote' id='_footnote_" + n + "'>" +
"<a href='#_footnoteref_" + n + "' title='Return to text'>" +
n + "</a>. " + note + "</div>";
if (id != null) { refs["#"+id] = n; }
});
if (inner_html) { noteholder.html("<hr>" + inner_html); }
if (id != null) { refs["#"+id] = n; }
});
if (inner_html) { noteholder.html("<hr>" + inner_html); }
if (n != 0) {
// process footnoterefs.
if (n != 0) {
// process footnoterefs.
- jQuery("#asciidoccontent span.footnoteref").each(function(){
+ $content.find("span.footnoteref").each(function(){
var span = jQuery(this);
var href = span.find("a").first().attr("href");
href = href.match(/#.*/)[0]; // in case it return full URL.
var span = jQuery(this);
var href = span.find("a").first().attr("href");
href = href.match(/#.*/)[0]; // in case it return full URL.
// add init to mediawiki resource loader queue
(window.RLQ=window.RLQ||[]).push(function(){
// add init to mediawiki resource loader queue
(window.RLQ=window.RLQ||[]).push(function(){
- asciidoc.footnotes();
- asciidoc.toc();
+ mw.hook('wikipage.content').add(function($content) {
+ asciidoc.toc($content);
+ asciidoc.footnotes($content);
+ });