Template:Code

From 2013.igem.org

(Difference between revisions)
Line 44: Line 44:
     float: left;
     float: left;
     background-color: #E0F8E0;
     background-color: #E0F8E0;
 +
    position: fixed;
     width:200px;
     width:200px;
}
}
Line 85: Line 86:
<script type="text/javascript">
<script type="text/javascript">
        
        
-
     $(function() {
+
     $(function() {
-
          var menu = document.getElementById("side_menu_items");
+
    // Stick the #nav to the top of the window
-
          var menu_items = menu.childNodes;
+
    var nav = $('#side_menu_items');
-
          for (var i=0; i< menu_items.length; i++) {
+
    var navHomeY = nav.offset().top;
-
              if (menu_items[i].tagName == "LI") {
+
    var isFixed = false;
-
                  menu_items[i].onmouseover = (function() {
+
    var $w = $(window);
-
                                                    var item = menu_items[i];
+
    $w.scroll(function() {
-
                                                    return function() {
+
        var scrollTop = $w.scrollTop();
-
                                                          var children = item.childNodes;
+
        var shouldBeFixed = scrollTop > navHomeY;
-
                                                          for (var j=0; j< children.length; j++) {
+
        if (shouldBeFixed && !isFixed) {
-
                                                              if (children[j].tagName == "UL") {
+
            nav.css({
-
                                                                  children[j].style.display="block";     
+
                position: 'fixed',
-
                                                              }
+
                top: 0,
-
                                                          }
+
                left: nav.offset().left,
-
                                                         
+
                width: nav.width()
-
                                                    }
+
            });
-
                                                })();
+
            isFixed = true;
-
 
+
        }
-
                  menu_items[i].onmouseout = (function() {
+
        else if (!shouldBeFixed && isFixed)
-
                                                    var item = menu_items[i];
+
        {
-
                                                    return function() {
+
            nav.css({
-
                                                          var children = item.childNodes;
+
                position: 'static'
-
                                                          for (var j=0; j< children.length; j++) {
+
            });
-
                                                              if (children[j].tagName == "UL") {
+
            isFixed = false;
-
                                                                  children[j].style.display= "none";    
+
        }
-
                                                              }
+
    });
-
                                                          }
+
});
-
                                                         
+
-
                                                    }
+
-
                                                })();
+
-
              }
+
-
          }
+
-
    });
+
var links = document.getElementsByTagName( 'a' );
var links = document.getElementsByTagName( 'a' );
Line 124: Line 119:
};
};
</script>
</script>
 +
</head>
</head>
</html>
</html>

Revision as of 15:20, 2 July 2013