docs: Don't render the table of contents on the print page (#12340)

code_spécifique_watcha
Andrew Morgan 3 years ago committed by GitHub
parent 73d8ded0b0
commit 0922462fc7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      changelog.d/12340.doc
  2. 14
      docs/website_files/table-of-contents.js

@ -0,0 +1 @@
Fix rendering of the documentation site when using the 'print' feature.

@ -75,6 +75,20 @@ function setTocEntry() {
* Populate sidebar on load
*/
window.addEventListener('load', () => {
// Prevent rendering the table of contents of the "print book" page, as it
// will end up being rendered into the output (in a broken-looking way)
// Get the name of the current page (i.e. 'print.html')
const pageNameExtension = window.location.pathname.split('/').pop();
// Split off the extension (as '.../print' is also a valid page name), which
// should result in 'print'
const pageName = pageNameExtension.split('.')[0];
if (pageName === "print") {
// Don't render the table of contents on this page
return;
}
// Only create table of contents if there is more than one header on the page
if (headers.length <= 1) {
return;

Loading…
Cancel
Save