26 lines
900 B
JavaScript
26 lines
900 B
JavaScript
|
|
import { Handler } from '/csspageweaver/lib/paged.esm.js';
|
||
|
|
|
||
|
|
|
||
|
|
export default class myCustomHandler2 extends Handler {
|
||
|
|
constructor(chunker, polisher, caller) {
|
||
|
|
super(chunker, polisher, caller);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
afterPageLayout(pageElement, page, breakToken) {
|
||
|
|
console.log(pageElement);
|
||
|
|
let pageArea = pageElement.querySelector(".pagedjs_area");
|
||
|
|
let pageAreaTop = pageArea.getBoundingClientRect().top;
|
||
|
|
let items = pageElement.querySelectorAll("p, h3, h4, .inline-note");
|
||
|
|
items.forEach(function (item) {
|
||
|
|
let topOffset = item.getBoundingClientRect().top - pageAreaTop;
|
||
|
|
let decor = document.createElement("div");
|
||
|
|
decor.classList.add("item-decor");
|
||
|
|
decor.style.top = topOffset + "px";
|
||
|
|
decor.textContent = pageElement.classList.contains("pagedjs_left_page") ? "<" : ">";
|
||
|
|
pageArea.appendChild(decor);
|
||
|
|
});
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|