jumpToPage.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. // fonctionnalité pour accéder directement à une page voulue
  2. if (debug) console.log('start jumpToPage');
  3. (function() {
  4. let uiContent = document.querySelector('.uiContent');
  5. let jumpToPageContainer = document.createElement('div');
  6. jumpToPageContainer.classList.add('jumpToPage');
  7. let jumpToPageTitle = document.createElement('div');
  8. jumpToPageTitle.innerText = "Aller à la page"
  9. let userInput = document.createElement('input');
  10. userInput.setAttribute('type', 'text');
  11. userInput.addEventListener('keydown', function(event) {
  12. if (event.key === "Enter") {
  13. jumpToPage(this.value);
  14. userInput.value = "";
  15. }
  16. });
  17. jumpToPageContainer.append(jumpToPageTitle);
  18. jumpToPageContainer.append(userInput);
  19. uiContent.append(jumpToPageContainer);
  20. function jumpToPage(pageNumber) {
  21. if (/^\d+$/.test(pageNumber)) {
  22. pageNumber = parseInt(pageNumber);
  23. let pagesArray = document.querySelectorAll('.pagedjs_page')
  24. if (pageNumber <= pagesArray.length) {
  25. pagesArray[pageNumber - 1].scrollIntoView({ behavior: "smooth", block: "start" });
  26. }
  27. }
  28. }
  29. })();
  30. if (debug) console.log('end jumpToPage');