Template:Montgomery Cougars NJUSA/Common JS

From 2014hs.igem.org

Revision as of 02:44, 14 June 2014 by Casey.chow (Talk | contribs)

/* Edit this file: https://2014hs.igem.org/wiki/index.php?title=Template:Montgomery_Cougars_NJUSA/Common_CSS&action=edit */

/* https://2011.igem.org/Team:DTU-Denmark/How_to_customize_an_iGEM_wiki#Remove_all_empty_.3Cp.3E.3C.2Fp.3E_tags */ $(document).ready(function() {

   $("p").filter( function() {
       return $.trim($(this).html()) == ;
   }).remove();
   $("br:only-child").remove();
   $('#slider').unslider({
       delay: 2500,
       fluid: true
   });
   if($('#toc').length != 0) {
       var visible = false;
       $('#toc').remove();
       $('body').addClass('with-toc');
var $jqtoc = $('
')
       .prependTo('#main-wrapper')
       .toc({
           container: '#inner-content',
           headerText: function(i, heading, $heading) { // remove [edit] link
               return $heading.text().replace(/\[edit\]/g, ); 
           }
       });
       if (window.location.hash) {
           $jqtoc.children('ul').fadeOut(0);
       }


       $('#header').onScreen({
           doOut: function() {
               $jqtoc.children('ul').fadeIn();
           }
       });
   }

});

/*!

* toc - jQuery Table of Contents Plugin
* v0.3.2
* http://projects.jga.me/toc/
* copyright Greg Allen 2014
* MIT License
  • /
!function(a){a.fn.smoothScroller=function(b){b=a.extend({},a.fn.smoothScroller.defaults,b);var c=a(this);return a(b.scrollEl).animate({scrollTop:c.offset().top-a(b.scrollEl).offset().top-b.offset},b.speed,b.ease,function(){var a=c.attr("id");a.length&&(history.pushState?history.pushState(null,null,"#"+a):document.location.hash=a),c.trigger("smoothScrollerComplete")}),this},a.fn.smoothScroller.defaults={speed:400,ease:"swing",scrollEl:"body,html",offset:0},a("body").on("click","[data-smoothscroller]",function(b){b.preventDefault();var c=a(this).attr("href");0===c.indexOf("#")&&a(c).smoothScroller()})}(jQuery),function(a){var b={};a.fn.toc=function(b){var c,d=this,e=a.extend({},jQuery.fn.toc.defaults,b),f=a(e.container),g=a(e.selectors,f),h=[],i=e.activeClass,j=function(b,c){if(e.smoothScrolling&&"function"==typeof e.smoothScrolling){b.preventDefault();var f=a(b.target).attr("href");e.smoothScrolling(f,e,c)}a("li",d).removeClass(i),a(b.target).parent().addClass(i)},k=function(){c&&clearTimeout(c),c=setTimeout(function(){for(var b,c=a(window).scrollTop(),f=Number.MAX_VALUE,g=0,j=0,k=h.length;k>j;j++){var l=Math.abs(h[j]-c);f>l&&(g=j,f=l)}a("li",d).removeClass(i),b=a("li:eq("+g+")",d).addClass(i),e.onHighlight(b)},50)};return e.highlightOnScroll&&(a(window).bind("scroll",k),k()),this.each(function(){var b=a(this),c=a(e.listType);g.each(function(d,f){var g=a(f);h.push(g.offset().top-e.highlightOffset);var i=e.anchorName(d,f,e.prefix);if(f.id!==i){a("<span/>").attr("id",i).insertBefore(g)}var l=a("<a/>").text(e.headerText(d,f,g)).attr("href","#"+i).bind("click",function(c){a(window).unbind("scroll",k),j(c,function(){a(window).bind("scroll",k)}),b.trigger("selected",a(this).attr("href"))}),m=a("
  • ").addClass(e.itemClass(d,f,g,e.prefix)).append(l);c.append(m)}),b.html(c)})},jQuery.fn.toc.defaults={container:"body",listType:"<ul/>",selectors:"h1,h2,h3",smoothScrolling:function(b,c,d){a(b).smoothScroller({offset:c.scrollToOffset}).on("smoothScrollerComplete",function(){d()})},scrollToOffset:0,prefix:"toc",activeClass:"toc-active",onHighlight:function(){},highlightOnScroll:!0,highlightOffset:100,anchorName:function(c,d,e){if(d.id.length)return d.id;var f=a(d).text().replace(/[^a-z0-9]/gi," ").replace(/\s+/g,"-").toLowerCase();if(b[f]){for(var g=2;b[f+g];)g++;f=f+"-"+g}return b[f]=!0,e+"-"+f},headerText:function(a,b,c){return c.text()},itemClass:function(a,b,c,d){return d+"-"+c[0].tagName.toLowerCase()}}}(jQuery); /* http://silvestreh.github.io/onScreen/ */ (function($){$.fn.onScreen=function(options){var params=$.extend({container:window,direction:'vertical',toggleClass:null,doIn:null,doOut:null,tolerance:0,throttle:null,lazyAttr:null,lazyPlaceholder:'data:image/gif;base64,R0lGODlhEAAFAIAAAP///////yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCQAAACwAAAAAEAAFAAACCIyPqcvtD00BACH5BAkJAAIALAAAAAAQAAUAgfT29Pz6/P///wAAAAIQTGCiywKPmjxUNhjtMlWrAgAh+QQJCQAFACwAAAAAEAAFAIK8urzc2tzEwsS8vrzc3tz///8AAAAAAAADFEiyUf6wCEBHvLPemIHdTzCMDegkACH5BAkJAAYALAAAAAAQAAUAgoSChLS2tIyKjLy+vIyOjMTCxP///wAAAAMUWCQ09jAaAiqQmFosdeXRUAkBCCUAIfkECQkACAAsAAAAABAABQCDvLq83N7c3Nrc9Pb0xMLE/P78vL68/Pr8////AAAAAAAAAAAAAAAAAAAAAAAAAAAABCEwkCnKGbegvQn4RjGMx8F1HxBi5Il4oEiap2DcVYlpZwQAIfkECQkACAAsAAAAABAABQCDvLq85OLkxMLE9Pb0vL685ObkxMbE/Pr8////AAAAAAAAAAAAAAAAAAAAAAAAAAAABCDwnCGHEcIMxPn4VAGMQNBx0zQEZHkiYNiap5RaBKG9EQAh+QQJCQAJACwAAAAAEAAFAIOEgoTMysyMjozs6uyUlpSMiozMzsyUkpTs7uz///8AAAAAAAAAAAAAAAAAAAAAAAAEGTBJiYgoBM09DfhAwHEeKI4dGKLTIHzCwEUAIfkECQkACAAsAAAAABAABQCDvLq85OLkxMLE9Pb0vL685ObkxMbE/Pr8////AAAAAAAAAAAAAAAAAAAAAAAAAAAABCAQSTmMEGaco8+UBSACwWBqHxKOJYd+q1iaXFoRRMbtEQAh+QQJCQAIACwAAAAAEAAFAIO8urzc3tzc2tz09vTEwsT8/vy8vrz8+vz///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAEIhBJWc6wJZAtJh3gcRBAaXiIZV2kiRbgNZbA6VXiUAhGL0QAIfkECQkABgAsAAAAABAABQCChIKEtLa0jIqMvL68jI6MxMLE////AAAAAxRoumxFgoxGCbiANos145e3DJcQJAAh+QQJCQAFACwAAAAAEAAFAIK8urzc2tzEwsS8vrzc3tz///8AAAAAAAADFFi6XCQwtCmAHbPVm9kGWKcEQxkkACH5BAkJAAIALAAAAAAQAAUAgfT29Pz6/P///wAAAAIRlI8SAZsPYnuJMUCRnNksWwAAOw==',debug:false},options);return this.each(function(){var isOnScreen=false;var scrollTop;var scrollLeft;var $el=$(this);var $container;var containerHeight;var containerWidth;var containerBottom;var containerRight;var elHeight;var elWidth;var elTop;var elLeft;var containerIsWindow=$.isWindow(params.container);function verticalIn(){if(containerIsWindow){return elTop<containerBottom-params.tolerance&&scrollTop<(elTop+elHeight)-params.tolerance;}else{return elTop<containerHeight-params.tolerance&&elTop>(-elHeight)+params.tolerance;}}function verticalOut(){if(containerIsWindow){return elTop+(elHeight-params.tolerance)<scrollTop||elTop>containerBottom-params.tolerance;}else{return elTop>containerHeight-params.tolerance||-elHeight+params.tolerance>elTop;}}function horizontalIn(){if(containerIsWindow){return elLeft<containerRight-params.tolerance&&scrollLeft<(elLeft+elWidth)-params.tolerance;}else{return elLeft<containerWidth-params.tolerance&&elLeft>(-elWidth)+params.tolerance;}}function horizontalOut(){if(containerIsWindow){return elLeft+(elWidth-params.tolerance)<scrollLeft||elLeft>containerRight-params.tolerance;}else{return elLeft>containerWidth-params.tolerance||-elWidth+params.tolerance>elLeft;}}function directionIn(){if(isOnScreen){return false;}if(params.direction==='horizontal'){return horizontalIn();}else{return verticalIn();}}function directionOut(){if(!isOnScreen){return false;}if(params.direction==='horizontal'){return horizontalOut();}else{return verticalOut();}}function throttle(fn,timeout,ctx){var timer,args,needInvoke;return function(){args=arguments;needInvoke=true;ctx=ctx||this;if(!timer){(function(){if(needInvoke){fn.apply(ctx,args);needInvoke=false;timer=setTimeout(arguments.callee,timeout);}else{timer=null;}})();}};}var checkPos=function(){if(!containerIsWindow&&$(params.container).css('position')==='static'){$(params.container).css('position','relative');}$container=$(params.container);containerHeight=$container.height();containerWidth=$container.width();containerBottom=$container.scrollTop()+containerHeight;containerRight=$container.scrollLeft()+containerWidth;elHeight=$el.outerHeight(true);elWidth=$el.outerWidth(true);if(containerIsWindow){var offset=$el.offset();elTop=offset.top;elLeft=offset.left;}else{var position=$el.position();elTop=position.top;elLeft=position.left;}scrollTop=$container.scrollTop();scrollLeft=$container.scrollLeft();if(params.debug){console.log('Container: '+params.container+'\n'+'Width: '+containerHeight+'\n'+'Height: '+containerWidth+'\n'+'Bottom: '+containerBottom+'\n'+'Right: '+containerRight);console.log('Matched element: '+($el.attr('class')!==undefined?$el.prop('tagName').toLowerCase()+'.'+$el.attr('class'):$el.prop('tagName').toLowerCase())+'\n'+'Left: '+elLeft+'\n'+'Top: '+elTop+'\n'+'Width: '+elWidth+'\n'+'Height: '+elHeight);}if(directionIn()){if(params.toggleClass){$el.addClass(params.toggleClass);}if($.isFunction(params.doIn)){params.doIn.call($el[0]);}if(params.lazyAttr&&$el.prop('tagName')==='IMG'){var lazyImg=$el.attr(params.lazyAttr);$el.css({background:'url('+params.lazyPlaceholder+') 50% 50% no-repeat',minHeight:'5px',minWidth:'16px'});$el.prop('src',lazyImg);}isOnScreen=true;}else if(directionOut()){if(params.toggleClass){$el.removeClass(params.toggleClass);}if($.isFunction(params.doOut)){params.doOut.call($el[0]);}isOnScreen=false;}};if(window.location.hash){throttle(checkPos,50);}else{checkPos();}if(params.throttle){checkPos=throttle(checkPos,params.throttle);}$(params.container).on('scroll resize',checkPos);if(!containerIsWindow){$(window).on('resize',checkPos);}if(typeof module==='object'&&module&&typeof module.exports==='object'){module.exports=jQuery;}else{if(typeof define==='function'&&define.amd){define('jquery-onscreen',[],function(){return jQuery;});}}});};})(jQuery);