Difference between revisions of "Template:Shanghaitech/js"

 
(4 intermediate revisions by the same user not shown)
Line 7: Line 7:
 
function parseContentTitles() {
 
function parseContentTitles() {
 
     titles = document.getElementById("content-block").getElementsByTagName('h2');
 
     titles = document.getElementById("content-block").getElementsByTagName('h2');
 +
    var count = 0;
 
     if (titles.length === 0) {
 
     if (titles.length === 0) {
 
         $("#mySidenav").remove();
 
         $("#mySidenav").remove();
Line 12: Line 13:
 
         for (var i = 0; i < titles.length; i++) {
 
         for (var i = 0; i < titles.length; i++) {
 
             title = titles[i];
 
             title = titles[i];
             title.id = title.textContent.replace(/\ /g, '-');
+
             title.id = 'passageTitle' + count;
 +
            count += 1;
 
             createSidenavElement(title);
 
             createSidenavElement(title);
 
         }
 
         }
 +
        $(window).load(adjustSidenavHeight);
 +
        $(window).resize(adjustSidenavHeight);
 
     }
 
     }
 
}
 
}
Line 29: Line 33:
 
}
 
}
  
function adjustSidenavHeight(){
+
function adjustSidenavHeight() {
     while ($("#sidenav-wrapper").height() >= $("#mySidenav").height()*0.9){
+
     $("#sidenav-wrapper").removeClass("scroll").removeClass("narrower").removeClass("narrow");
        if(! $("#sidenav-wrapper").hasClass("narrow")){
+
    narrowSidebar();
            $("#sidenav-wrapper").addClass("narrow");
+
}
        }else if (! $("#sidenav-wrapper").hasClass("narrower")){
+
 
            $("#sidenav-wrapper").addClass("narrower");
+
function narrowSidebar() {
         }else{
+
    var lastHeight = $("#sidenav-wrapper").height();
            $("#sidenav-wrapper").addClass("scroll");
+
    if ($("#sidenav-wrapper").height() >= $("#mySidenav").height() * 0.9) {
            break;
+
         narrowerSidebar()
        }
+
 
     }
 
     }
     while ($("#sidenav-wrapper").height() <= $("#mySidenav").height()*0.9){
+
     setTimeout(function () {
         if($("#sidenav-wrapper").hasClass("scroll")){
+
         if ($("#sidenav-wrapper").height() != lastHeight) {
             $("#sidenav-wrapper").removeClass("scroll");
+
             narrowSidebar()
         }else if($("#sidenav-wrapper").hasClass("narrower")){
+
         } else {
             $("#sidenav-wrapper").removeClass("narrower");
+
             setTimeout(this, 500)
        }else{
+
            $("#sidenav-wrapper").removeClass("narrow");
+
            break;
+
 
         }
 
         }
 +
    }, 500);
 +
}
 +
 +
function narrowerSidebar() {
 +
    if (!$("#sidenav-wrapper").hasClass("narrow")) {
 +
        $("#sidenav-wrapper").addClass("narrow");
 +
    } else if (!$("#sidenav-wrapper").hasClass("narrower")) {
 +
        $("#sidenav-wrapper").addClass("narrower");
 +
    } else {
 +
        $("#sidenav-wrapper").addClass("scroll");
 
     }
 
     }
 
}
 
}
  
 
$(document).ready(createSidenav);
 
$(document).ready(createSidenav);
$(window).load(adjustSidenavHeight);
 
$( window ).resize(adjustSidenavHeight);
 
  
  
 
</script></html>
 
</script></html>

Latest revision as of 17:58, 30 October 2017