kopia lustrzana https://github.com/shoelace-style/shoelace
prettier
rodzic
5166964659
commit
b67eef484c
|
|
@ -1,29 +1,29 @@
|
||||||
import * as Turbo from 'https://cdn.jsdelivr.net/npm/@hotwired/turbo@7.3.0/+esm'
|
import * as Turbo from 'https://cdn.jsdelivr.net/npm/@hotwired/turbo@7.3.0/+esm';
|
||||||
|
|
||||||
;(() => {
|
(() => {
|
||||||
if (!window.scrollPositions) {
|
if (!window.scrollPositions) {
|
||||||
window.scrollPositions = {};
|
window.scrollPositions = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
function preserveScroll () {
|
function preserveScroll() {
|
||||||
document.querySelectorAll("[data-preserve-scroll").forEach((element) => {
|
document.querySelectorAll('[data-preserve-scroll').forEach(element => {
|
||||||
scrollPositions[element.id] = element.scrollTop;
|
scrollPositions[element.id] = element.scrollTop;
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function restoreScroll (event) {
|
function restoreScroll(event) {
|
||||||
document.querySelectorAll("[data-preserve-scroll").forEach((element) => {
|
document.querySelectorAll('[data-preserve-scroll').forEach(element => {
|
||||||
element.scrollTop = scrollPositions[element.id];
|
element.scrollTop = scrollPositions[element.id];
|
||||||
})
|
});
|
||||||
|
|
||||||
if (event.detail && event.detail.newBody) {
|
if (event.detail && event.detail.newBody) {
|
||||||
event.detail.newBody.querySelectorAll("[data-preserve-scroll").forEach((element) => {
|
event.detail.newBody.querySelectorAll('[data-preserve-scroll').forEach(element => {
|
||||||
element.scrollTop = scrollPositions[element.id];
|
element.scrollTop = scrollPositions[element.id];
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
window.addEventListener("turbo:before-cache", preserveScroll)
|
window.addEventListener('turbo:before-cache', preserveScroll);
|
||||||
window.addEventListener("turbo:before-render", restoreScroll)
|
window.addEventListener('turbo:before-render', restoreScroll);
|
||||||
window.addEventListener("turbo:render", restoreScroll)
|
window.addEventListener('turbo:render', restoreScroll);
|
||||||
})()
|
})();
|
||||||
|
|
|
||||||
Ładowanie…
Reference in New Issue