mirror of https://github.com/twbs/bootstrap.git
				
				
				
			
		
			
				
	
	
		
			82 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
| $(document).ready(function(){
 | |
| 
 | |
|   // Example dropdown for topbar nav
 | |
|   $("body").bind("click", function(e) {
 | |
|     $("ul.menu-dropdown").hide();
 | |
|     $('a.menu').parent("li").removeClass("open").children("ul.menu-dropdown").hide();
 | |
|   });
 | |
|   $("a.menu").click(function(e) {
 | |
|     var $target = $(this);
 | |
|     var $parent = $target.parent("li");
 | |
|     var $siblings = $target.siblings("ul.menu-dropdown");
 | |
|     var $parentSiblings = $parent.siblings("li");
 | |
|     if ($parent.hasClass("open")) {
 | |
|       $parent.removeClass("open");
 | |
|       $siblings.hide();
 | |
|     } else {
 | |
|       $parent.addClass("open");
 | |
|       $siblings.show();
 | |
|     }
 | |
|     $parentSiblings.children("ul.menu-dropdown").hide();
 | |
|     $parentSiblings.removeClass("open");
 | |
|     return false;
 | |
|   });
 | |
| 
 | |
|   // table sort example
 | |
|   $("#sortTableExample").tablesorter( {sortList: [[1,0]]} );
 | |
| 
 | |
|   // add on
 | |
|   $('.add-on :checkbox').click(function() {
 | |
|     if ($(this).attr('checked')) {
 | |
|       $(this).parents('.add-on').addClass('active');
 | |
|     } else {
 | |
|       $(this).parents('.add-on').removeClass('active');
 | |
|     }
 | |
|   });
 | |
| 
 | |
| 
 | |
|   // Copy code blocks in docs
 | |
|   $(".copy-code").focus(function() {
 | |
|     $(this).select();
 | |
|   });
 | |
|   $(".copy-code").mouseup(function(e) {
 | |
|     e.preventDefault();
 | |
|   });
 | |
| 
 | |
| 
 | |
|   // scroll spyer
 | |
|   var activeTarget,
 | |
|       $window = $(window),
 | |
|       position = {},
 | |
|       nav = $('body > .topbar li a'),
 | |
|       targets = nav.map(function () {
 | |
|         return $(this).attr('href');
 | |
|       }),
 | |
|       offsets = $.map(targets, function (id) {
 | |
|         return $(id).offset().top;
 | |
|       });
 | |
| 
 | |
| 
 | |
|   function setButton(id) {
 | |
|     nav.parent("li").removeClass('active');
 | |
|     $(nav[$.inArray(id, targets)]).parent("li").addClass('active');
 | |
|   }
 | |
| 
 | |
|   function processScroll(e) {
 | |
|     var scrollTop = $window.scrollTop() + 10, i;
 | |
|     for (i = offsets.length; i--;) {
 | |
|       if (activeTarget != targets[i] && scrollTop >= offsets[i] && (!offsets[i + 1] || scrollTop <= offsets[i + 1])) {
 | |
|         activeTarget = targets[i];
 | |
|         setButton(activeTarget);
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   nav.click(function () {
 | |
|     processScroll();
 | |
|   });
 | |
| 
 | |
|   processScroll();
 | |
| 
 | |
|   $window.scroll(processScroll);
 | |
| }); |