leftoffset = x - margin;
} else {
right = '';
-
- // default position.
- leftoffset = 40;
+
leftoffset = $elem.data('default-leftoffset');
+ if (leftoffset === undefined) {
+ leftoffset = $elem.width() / 2;
+ }
nx = x - leftoffset;
// Do we need to move away from the right?
if (nx + boxwidth > maxx) {
- // ACTUALLY CALCULATE STUFF
- // if maxx - minx < 470 px -- daj z lewej do prawej i już!
-
right = '';
let d = nx + boxwidth - maxx;
- //if (leftoffset + d > $elem.width() - 10) d = $elem.width() - leftoffset - 10;
nx -= d;
leftoffset += d;
}
left: nx,
right: right
});
+ $elem.css({
+ display: "block"
+ });
if (!$elem.data('attach-bottom')) {
ny = y - $elem.height() - 10;
} else {
left: leftoffset - 6
});
- $elem.css({
- display: "block"
- });
}
function closeNoteBox() {
if ($(this).parents('#footnotes').length) return;
event.preventDefault();
-
-
- let x = $(this).width() / 2, y = 0;
- let elem = $(this);
- while (elem.attr('id') != 'book-text') {
- let p = $(elem).position();
- x += p.left;
- y += p.top;
- elem = elem.parent();
- }
href = $(this).attr('href').substr(1);
content = $("[name='" + href + "']").next().next().html();
if (!content) return;
$("#annotation-content").html(content);
$("#footnote-link").attr('href', '#' + href)
-
putNoteAt($('#annotation-box'), this);
event.stopPropagation();
});
let text = window.location.protocol + '//' +
window.location.host +
window.location.pathname;
- if (anchor) text += anchor;
+ if (anchor) text += '#' + anchor;
navigator.clipboard.writeText(text);
this.hideCopied();
});
$('a.anchor').on('click', function(e) {
+ // Workaround for bad TOC markers.
+ if ($(this).closest('#toc').length) return;
+ if ($(this).closest('#wltoc').length) return;
e.preventDefault();
let sel = window.getSelection();
let range = document.createRange();
let $p = $(this).nextAll('.paragraph').first()
- range.selectNode($p[0]);
+ range.selectNodeContents($p[0]);
sel.addRange(range);
qbox.showForSelection(sel);