diff --git a/js/main.js b/js/main.js
index e9c69ec..f0d791d 100644
--- a/js/main.js
+++ b/js/main.js
@@ -132,15 +132,15 @@ function linkFootnotes() {
let link = document.createElement('a');
target.id = `foot${index}${targetid}`;
link.href = '#' + target.id;
- link.innerText = ++index;
+ link.innerText = (index + 1);
origin.innerHTML = '';
origin.appendChild(link);
};
function createPopover(index, origin, target) {
let content = target.parentElement.innerHTML;
- content = content.substring(`${index+1}`.length-1);
- if(target.parentElement.nextSibling.tagName !== 'P')
+ content = content.substring(`${index+1}`.length);
+ if(target.parentElement && target.parentElement.nextSibling && target.parentElement.nextSibling.tagName !== 'P')
content += '…';
tippy(origin, { content, animateFill: false, animation: 'fade', theme: 'pcl'});
@@ -149,6 +149,7 @@ function linkFootnotes() {
let footMap = collectFootnotes();
for(let index in footMap) {
+ index = parseInt(index); // I love you JavaScript :/
let pair = footMap[index];
if(pair && 'origin' in pair && 'target' in pair) {
let origin = pair.origin;
@@ -166,11 +167,11 @@ loadChapters().then(newChapters => {
setUpNumbering();
});
+linkFootnotes();
wrapPre();
HighlightLisp.highlight_auto();
HighlightLisp.paren_match();
createTOC();
setUpNav();
-linkFootnotes();
diff --git a/manifest.json b/manifest.json
index bab8965..a561d1c 100644
--- a/manifest.json
+++ b/manifest.json
@@ -1,7 +1,7 @@
{
"manifest_version": 2,
"name": "Beautify Practical Common Lisp",
- "version": "1.4",
+ "version": "1.5",
"description": "Adds a simple table of contents and syntax highlighting to the web version of Practical Common Lisp by Peter Seibel.",