jQuery(document).ready(function () { checkActiveState(); // Set height var content_height = $(".col-sm-9").height(); $(".col-sm-3").css("min-height", content_height + "px"); $("ul.nav li a").click(function (event) { var link = $(this); var local_destination = link.attr("href"); if ( link.data('toggle') ) { return; } event.preventDefault(); if ( window.location.protocol === 'file:' ) { if ( local_destination.substr(-1) === '/' ) { local_destination += 'index.html'; } window.location.href = local_destination; return false; } $.get(local_destination, function (data) { var title = $(data).find("title").text(); var local_content = $(data).find(".col-sm-9").html(); changeUrl(title, local_destination); checkActiveState(); $(".col-sm-9").html(local_content); //If has a class hash (jump on the page) if(link.hasClass('hash')){ var local_destination_array = local_destination.split('#'); var paragraph_id = local_destination_array[1]; var paragraph_destination = $('.col-sm-9 #' + paragraph_id).offset().top; $('body,html').animate({scrollTop: paragraph_destination + "px"}); } // Set height var content_height = $(".col-sm-9").height(); $(".col-sm-3").css("min-height", content_height + "px"); }); setTimeout(function() { linkAnchors(); },250); }); linkAnchors(); }); function linkAnchors() { $('.content-container H3[id], .content-container H4[id], .content-container H5[id], .content-container H6[id]').each(function(idx, el) { $(el).append($('').addClass('header-anchor').attr('href', '#' + el.id).html('')); }); } function changeUrl(title, url) { if (typeof (history.pushState) != "undefined") { var obj = {Title: title, Url: url}; history.pushState(obj, obj.Title, obj.Url); } } function checkActiveState() { $('UL.nav UL').removeClass('in'); $('UL A').each(function(idx, a) { var $a = $(a); if ( a.href === window.location.href ) { $a.addClass('active'); $a.closest('.list-group-submenu-submenu').parent().children('a').addClass("active"); $a.closest('.list-group-submenu').parent().children('a').addClass("active"); $a.parents('UL').addClass('in'); } else { $a.removeClass('active'); } }); }