Difference between revisions of "Template:Team:TU Eindhoven/Menu Script"

Line 22: Line 22:
 
         window.scrollTo(window.scrollX, window.scrollY - 100);
 
         window.scrollTo(window.scrollX, window.scrollY - 100);
 
     });
 
     });
 +
 +
//Nieuwe scrollzooi van Hans
 +
 +
/*!
 +
* jQuery Smooth Scroll - v1.5.6 - 2015-09-08
 +
* https://github.com/kswedberg/jquery-smooth-scroll
 +
* Copyright (c) 2015 Karl Swedberg
 +
* Licensed MIT (https://github.com/kswedberg/jquery-smooth-scroll/blob/master/LICENSE-MIT)
 +
*/
 +
 +
(function (factory) {
 +
  if (typeof define === 'function' && define.amd) {
 +
    // AMD. Register as an anonymous module.
 +
    define(['jquery'], factory);
 +
  } else if (typeof module === 'object' && module.exports) {
 +
    // CommonJS
 +
    factory(require('jquery'));
 +
  } else {
 +
    // Browser globals
 +
    factory(jQuery);
 +
  }
 +
}(function ($) {
 +
 +
  var version = '1.5.6',
 +
      optionOverrides = {},
 +
      defaults = {
 +
        exclude: [],
 +
        excludeWithin:[],
 +
        offset: 0,
 +
 +
        // one of 'top' or 'left'
 +
        direction: 'top',
 +
 +
        // jQuery set of elements you wish to scroll (for $.smoothScroll).
 +
        //  if null (default), $('html, body').firstScrollable() is used.
 +
        scrollElement: null,
 +
 +
        // only use if you want to override default behavior
 +
        scrollTarget: null,
 +
 +
        // fn(opts) function to be called before scrolling occurs.
 +
        // `this` is the element(s) being scrolled
 +
        beforeScroll: function() {},
 +
 +
        // fn(opts) function to be called after scrolling occurs.
 +
        // `this` is the triggering element
 +
        afterScroll: function() {},
 +
        easing: 'swing',
 +
        speed: 400,
 +
 +
        // coefficient for "auto" speed
 +
        autoCoefficient: 2,
 +
 +
        // $.fn.smoothScroll only: whether to prevent the default click action
 +
        preventDefault: true
 +
      },
 +
 +
      getScrollable = function(opts) {
 +
        var scrollable = [],
 +
            scrolled = false,
 +
            dir = opts.dir && opts.dir === 'left' ? 'scrollLeft' : 'scrollTop';
 +
 +
        this.each(function() {
 +
          var el = $(this);
 +
 +
          if (this === document || this === window) {
 +
            return;
 +
          }
 +
 +
          if ( document.scrollingElement && (this === document.documentElement || this === document.body) ) {
 +
            scrollable.push(document.scrollingElement);
 +
 +
            return false;
 +
          }
 +
 +
          if ( el[dir]() > 0 ) {
 +
            scrollable.push(this);
 +
          } else {
 +
            // if scroll(Top|Left) === 0, nudge the element 1px and see if it moves
 +
            el[dir](1);
 +
            scrolled = el[dir]() > 0;
 +
            if ( scrolled ) {
 +
              scrollable.push(this);
 +
            }
 +
            // then put it back, of course
 +
            el[dir](0);
 +
          }
 +
        });
 +
 +
        // If no scrollable elements, fall back to <body>,
 +
        // if it's in the jQuery collection
 +
        // (doing this because Safari sets scrollTop async,
 +
        // so can't set it to 1 and immediately get the value.)
 +
        if (!scrollable.length) {
 +
          this.each(function() {
 +
            if (this.nodeName === 'BODY') {
 +
              scrollable = [this];
 +
            }
 +
          });
 +
        }
 +
 +
        // Use the first scrollable element if we're calling firstScrollable()
 +
        if ( opts.el === 'first' && scrollable.length > 1 ) {
 +
          scrollable = [ scrollable[0] ];
 +
        }
 +
 +
        return scrollable;
 +
      };
 +
 +
  $.fn.extend({
 +
    scrollable: function(dir) {
 +
      var scrl = getScrollable.call(this, {dir: dir});
 +
      return this.pushStack(scrl);
 +
    },
 +
    firstScrollable: function(dir) {
 +
      var scrl = getScrollable.call(this, {el: 'first', dir: dir});
 +
      return this.pushStack(scrl);
 +
    },
 +
 +
    smoothScroll: function(options, extra) {
 +
      options = options || {};
 +
 +
      if ( options === 'options' ) {
 +
        if ( !extra ) {
 +
          return this.first().data('ssOpts');
 +
        }
 +
        return this.each(function() {
 +
          var $this = $(this),
 +
              opts = $.extend($this.data('ssOpts') || {}, extra);
 +
 +
          $(this).data('ssOpts', opts);
 +
        });
 +
      }
 +
 +
      var opts = $.extend({}, $.fn.smoothScroll.defaults, options),
 +
          locationPath = $.smoothScroll.filterPath(location.pathname);
 +
 +
      this
 +
      .unbind('click.smoothscroll')
 +
      .bind('click.smoothscroll', function(event) {
 +
        var link = this,
 +
            $link = $(this),
 +
            thisOpts = $.extend({}, opts, $link.data('ssOpts') || {}),
 +
            exclude = opts.exclude,
 +
            excludeWithin = thisOpts.excludeWithin,
 +
            elCounter = 0, ewlCounter = 0,
 +
            include = true,
 +
            clickOpts = {},
 +
            hostMatch = ((location.hostname === link.hostname) || !link.hostname),
 +
            pathMatch = thisOpts.scrollTarget || ( $.smoothScroll.filterPath(link.pathname) === locationPath ),
 +
            thisHash = escapeSelector(link.hash);
 +
 +
        if ( !thisOpts.scrollTarget && (!hostMatch || !pathMatch || !thisHash) ) {
 +
          include = false;
 +
        } else {
 +
          while (include && elCounter < exclude.length) {
 +
            if ($link.is(escapeSelector(exclude[elCounter++]))) {
 +
              include = false;
 +
            }
 +
          }
 +
          while ( include && ewlCounter < excludeWithin.length ) {
 +
            if ($link.closest(excludeWithin[ewlCounter++]).length) {
 +
              include = false;
 +
            }
 +
          }
 +
        }
 +
 +
        if ( include ) {
 +
 +
          if ( thisOpts.preventDefault ) {
 +
            event.preventDefault();
 +
          }
 +
 +
          $.extend( clickOpts, thisOpts, {
 +
            scrollTarget: thisOpts.scrollTarget || thisHash,
 +
            link: link
 +
          });
 +
 +
          $.smoothScroll( clickOpts );
 +
        }
 +
      });
 +
 +
      return this;
 +
    }
 +
  });
 +
 +
  $.smoothScroll = function(options, px) {
 +
    if ( options === 'options' && typeof px === 'object' ) {
 +
      return $.extend(optionOverrides, px);
 +
    }
 +
    var opts, $scroller, scrollTargetOffset, speed, delta,
 +
        scrollerOffset = 0,
 +
        offPos = 'offset',
 +
        scrollDir = 'scrollTop',
 +
        aniProps = {},
 +
        aniOpts = {};
 +
 +
    if (typeof options === 'number') {
 +
      opts = $.extend({link: null}, $.fn.smoothScroll.defaults, optionOverrides);
 +
      scrollTargetOffset = options;
 +
    } else {
 +
      opts = $.extend({link: null}, $.fn.smoothScroll.defaults, options || {}, optionOverrides);
 +
      if (opts.scrollElement) {
 +
        offPos = 'position';
 +
        if (opts.scrollElement.css('position') === 'static') {
 +
          opts.scrollElement.css('position', 'relative');
 +
        }
 +
      }
 +
    }
 +
 +
    scrollDir = opts.direction === 'left' ? 'scrollLeft' : scrollDir;
 +
 +
    if ( opts.scrollElement ) {
 +
      $scroller = opts.scrollElement;
 +
      if ( !(/^(?:HTML|BODY)$/).test($scroller[0].nodeName) ) {
 +
        scrollerOffset = $scroller[scrollDir]();
 +
      }
 +
    } else {
 +
      $scroller = $('html, body').firstScrollable(opts.direction);
 +
    }
 +
 +
    // beforeScroll callback function must fire before calculating offset
 +
    opts.beforeScroll.call($scroller, opts);
 +
 +
    scrollTargetOffset = (typeof options === 'number') ? options :
 +
                          px ||
 +
                          ( $(opts.scrollTarget)[offPos]() &&
 +
                          $(opts.scrollTarget)[offPos]()[opts.direction] ) ||
 +
                          0;
 +
 +
    aniProps[scrollDir] = scrollTargetOffset + scrollerOffset + opts.offset;
 +
    speed = opts.speed;
 +
 +
    // automatically calculate the speed of the scroll based on distance / coefficient
 +
    if (speed === 'auto') {
 +
 +
      // $scroller.scrollTop() is position before scroll, aniProps[scrollDir] is position after
 +
      // When delta is greater, speed will be greater.
 +
      delta = aniProps[scrollDir] - $scroller.scrollTop();
 +
      if(delta < 0) {
 +
        delta *= -1;
 +
      }
 +
 +
      // Divide the delta by the coefficient
 +
      speed = delta / opts.autoCoefficient;
 +
    }
 +
 +
    aniOpts = {
 +
      duration: speed,
 +
      easing: opts.easing,
 +
      complete: function() {
 +
        opts.afterScroll.call(opts.link, opts);
 +
      }
 +
    };
 +
 +
    if (opts.step) {
 +
      aniOpts.step = opts.step;
 +
    }
 +
 +
    if ($scroller.length) {
 +
      $scroller.stop().animate(aniProps, aniOpts);
 +
    } else {
 +
      opts.afterScroll.call(opts.link, opts);
 +
    }
 +
  };
 +
 +
  $.smoothScroll.version = version;
 +
  $.smoothScroll.filterPath = function(string) {
 +
    string = string || '';
 +
    return string
 +
      .replace(/^\//,'')
 +
      .replace(/(?:index|default).[a-zA-Z]{3,4}$/,'')
 +
      .replace(/\/$/,'');
 +
  };
 +
 +
  // default options
 +
  $.fn.smoothScroll.defaults = defaults;
 +
 +
  function escapeSelector (str) {
 +
    return str.replace(/(:|\.|\/)/g,'\\$1');
 +
  }
 +
 +
}));
 +
  
 
// Get current Page
 
// Get current Page

Revision as of 08:59, 13 September 2015

$(document).ready(function() { //uitklap zooi van hans JW is een BITCH HANS is CRACKIE $('.spoilerbutton').click(function() { var id = "spoiler" + $(this).attr("id").match(/\d+/); if ($(this).attr("src").indexOf("Uitgeklapt") != -1) { $(this).attr("src","https://static.igem.org/mediawiki/2015/8/87/TU_Eindhoven_Ingeklapt.png"); $('#' + id).slideToggle(); } else { $(this).attr("src","https://static.igem.org/mediawiki/2015/6/65/TU_Eindhoven_Uitgeklapt.png"); $('#' + id).slideToggle(); }; var element = $(this); element.css("pointer-events","none"); setTimeout(function(){element.css("pointer-events","auto")},400); }); //scroll zooi van hans jQuery(window).on("hashchange", function () { window.scrollTo(window.scrollX, window.scrollY - 100); }); //Nieuwe scrollzooi van Hans /*! * jQuery Smooth Scroll - v1.5.6 - 2015-09-08 * https://github.com/kswedberg/jquery-smooth-scroll * Copyright (c) 2015 Karl Swedberg * Licensed MIT (https://github.com/kswedberg/jquery-smooth-scroll/blob/master/LICENSE-MIT) */ (function (factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. define(['jquery'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS factory(require('jquery')); } else { // Browser globals factory(jQuery); } }(function ($) { var version = '1.5.6', optionOverrides = {}, defaults = { exclude: [], excludeWithin:[], offset: 0, // one of 'top' or 'left' direction: 'top', // jQuery set of elements you wish to scroll (for $.smoothScroll). // if null (default), $('html, body').firstScrollable() is used. scrollElement: null, // only use if you want to override default behavior scrollTarget: null, // fn(opts) function to be called before scrolling occurs. // `this` is the element(s) being scrolled beforeScroll: function() {}, // fn(opts) function to be called after scrolling occurs. // `this` is the triggering element afterScroll: function() {}, easing: 'swing', speed: 400, // coefficient for "auto" speed autoCoefficient: 2, // $.fn.smoothScroll only: whether to prevent the default click action preventDefault: true }, getScrollable = function(opts) { var scrollable = [], scrolled = false, dir = opts.dir && opts.dir === 'left' ? 'scrollLeft' : 'scrollTop'; this.each(function() { var el = $(this); if (this === document || this === window) { return; } if ( document.scrollingElement && (this === document.documentElement || this === document.body) ) { scrollable.push(document.scrollingElement); return false; } if ( el[dir]() > 0 ) { scrollable.push(this); } else { // if scroll(Top|Left) === 0, nudge the element 1px and see if it moves el[dir](1); scrolled = el[dir]() > 0; if ( scrolled ) { scrollable.push(this); } // then put it back, of course el[dir](0); } }); // If no scrollable elements, fall back to , // if it's in the jQuery collection // (doing this because Safari sets scrollTop async, // so can't set it to 1 and immediately get the value.) if (!scrollable.length) { this.each(function() { if (this.nodeName === 'BODY') { scrollable = [this]; } }); } // Use the first scrollable element if we're calling firstScrollable() if ( opts.el === 'first' && scrollable.length > 1 ) { scrollable = [ scrollable[0] ]; } return scrollable; }; $.fn.extend({ scrollable: function(dir) { var scrl = getScrollable.call(this, {dir: dir}); return this.pushStack(scrl); }, firstScrollable: function(dir) { var scrl = getScrollable.call(this, {el: 'first', dir: dir}); return this.pushStack(scrl); }, smoothScroll: function(options, extra) { options = options || {}; if ( options === 'options' ) { if ( !extra ) { return this.first().data('ssOpts'); } return this.each(function() { var $this = $(this), opts = $.extend($this.data('ssOpts') || {}, extra); $(this).data('ssOpts', opts); }); } var opts = $.extend({}, $.fn.smoothScroll.defaults, options), locationPath = $.smoothScroll.filterPath(location.pathname); this .unbind('click.smoothscroll') .bind('click.smoothscroll', function(event) { var link = this, $link = $(this), thisOpts = $.extend({}, opts, $link.data('ssOpts') || {}), exclude = opts.exclude, excludeWithin = thisOpts.excludeWithin, elCounter = 0, ewlCounter = 0, include = true, clickOpts = {}, hostMatch = ((location.hostname === link.hostname) || !link.hostname), pathMatch = thisOpts.scrollTarget || ( $.smoothScroll.filterPath(link.pathname) === locationPath ), thisHash = escapeSelector(link.hash); if ( !thisOpts.scrollTarget && (!hostMatch || !pathMatch || !thisHash) ) { include = false; } else { while (include && elCounter < exclude.length) { if ($link.is(escapeSelector(exclude[elCounter++]))) { include = false; } } while ( include && ewlCounter < excludeWithin.length ) { if ($link.closest(excludeWithin[ewlCounter++]).length) { include = false; } } } if ( include ) { if ( thisOpts.preventDefault ) { event.preventDefault(); } $.extend( clickOpts, thisOpts, { scrollTarget: thisOpts.scrollTarget || thisHash, link: link }); $.smoothScroll( clickOpts ); } }); return this; } }); $.smoothScroll = function(options, px) { if ( options === 'options' && typeof px === 'object' ) { return $.extend(optionOverrides, px); } var opts, $scroller, scrollTargetOffset, speed, delta, scrollerOffset = 0, offPos = 'offset', scrollDir = 'scrollTop', aniProps = {}, aniOpts = {}; if (typeof options === 'number') { opts = $.extend({link: null}, $.fn.smoothScroll.defaults, optionOverrides); scrollTargetOffset = options; } else { opts = $.extend({link: null}, $.fn.smoothScroll.defaults, options || {}, optionOverrides); if (opts.scrollElement) { offPos = 'position'; if (opts.scrollElement.css('position') === 'static') { opts.scrollElement.css('position', 'relative'); } } } scrollDir = opts.direction === 'left' ? 'scrollLeft' : scrollDir; if ( opts.scrollElement ) { $scroller = opts.scrollElement; if ( !(/^(?:HTML|BODY)$/).test($scroller[0].nodeName) ) { scrollerOffset = $scroller[scrollDir](); } } else { $scroller = $('html, body').firstScrollable(opts.direction); } // beforeScroll callback function must fire before calculating offset opts.beforeScroll.call($scroller, opts); scrollTargetOffset = (typeof options === 'number') ? options : px || ( $(opts.scrollTarget)[offPos]() && $(opts.scrollTarget)[offPos]()[opts.direction] ) || 0; aniProps[scrollDir] = scrollTargetOffset + scrollerOffset + opts.offset; speed = opts.speed; // automatically calculate the speed of the scroll based on distance / coefficient if (speed === 'auto') { // $scroller.scrollTop() is position before scroll, aniProps[scrollDir] is position after // When delta is greater, speed will be greater. delta = aniProps[scrollDir] - $scroller.scrollTop(); if(delta < 0) { delta *= -1; } // Divide the delta by the coefficient speed = delta / opts.autoCoefficient; } aniOpts = { duration: speed, easing: opts.easing, complete: function() { opts.afterScroll.call(opts.link, opts); } }; if (opts.step) { aniOpts.step = opts.step; } if ($scroller.length) { $scroller.stop().animate(aniProps, aniOpts); } else { opts.afterScroll.call(opts.link, opts); } }; $.smoothScroll.version = version; $.smoothScroll.filterPath = function(string) { string = string || ''; return string .replace(/^\//,'') .replace(/(?:index|default).[a-zA-Z]{3,4}$/,'') .replace(/\/$/,''); }; // default options $.fn.smoothScroll.defaults = defaults; function escapeSelector (str) { return str.replace(/(:|\.|\/)/g,'\\$1'); } })); // Get current Page locus=$(location).attr('pathname'); submenu = 0; switch (locus) { case '/Team:TU_Eindhoven': submenu = 1; break; case '/Team:TU_Eindhoven/Team': submenu = 2; break; case '/Team:TU_Eindhoven/Team/Members': submenu = 2; break; case '/Team:TU_Eindhoven/Team/Supervisors': submenu = 2; break; case '/Team:TU_Eindhoven/Attributions': submenu = 2; break; case '/Team:TU_Eindhoven/Description': submenu = 3; break; case '/Team:TU_Eindhoven/Project/Design': submenu = 3; break; case '/Team:TU_Eindhoven/Project/Experimental_Approach': submenu = 3; break; case '/Team:TU_Eindhoven/Project/Protocols': submenu = 3; break; case '/Team:TU_Eindhoven/Notebook': submenu = 3; break; case '/Team:TU_Eindhoven/Project/Interlab': submenu = 4; break; case '/Team:TU_Eindhoven/ResultsHome': submenu = 4; break; case '/Team:TU_Eindhoven/Results': submenu = 4; break; case '/Team:TU_Eindhoven/Achievements': submenu = 4; break; case '/Team:TU_Eindhoven/Parts': submenu = 4; break; case '/Team:TU_Eindhoven/Modeling': submenu = 5; break; case '/Team:TU_Eindhoven/Practices': submenu = 6; break; case '/Team:TU_Eindhoven/Policy_Practices/Timeline': submenu = 6; break; case '/Team:TU_Eindhoven/Policy_Practices/Educational_outreach': submenu = 6; break; case '/Team:TU_Eindhoven/Policy_Practices/Application_scenarios': submenu = 6; break; case '/Team:TU_Eindhoven/Collaborations': submenu = 7; break; case '/Team:TU_Eindhoven/Collaborations/CloningGuide': submenu = 7; break; case '/Team:TU_Eindhoven/Collaborations/AmoyNewsletter': submenu = 7; break; case '/Team:TU_Eindhoven/Collaborations/Collaboration_Attributions': submenu = 7; break; case '/Team:TU_Eindhoven/Team/Sponsors': submenu = 8; break; case '/Team:TU_Eindhoven/Safety/Lab': submenu = 9; break; case '/Team:TU_Eindhoven/Safety': submenu = 9; break; }; // "submenu" contains the number of the submenu to be shown by default (or 0 for none). // icon var link = document.createElement('link'); link.type = 'image/x-icon'; link.rel = 'shortcut icon'; link.href = 'https://static.igem.org/mediawiki/2015/4/4a/Logo_Eindhoven_small.png'; document.getElementsByTagName('head')[0].appendChild(link); //background $("

").appendTo("body"); $('').appendTo("#background"); var a = 0; var fb_twit = 0; $("#twitter_logo,#twitter").hover( function() { $("#twitter").css("z-index","11"); $("#twitter").css("display","initial"); $("#menu1,#menu2,#menu3,#menu4,#menu5,#menu6,#menu7,#menu8,#menu9").css("color", "#004415"); $("#submenu").css("height","0px"); fb_twit = 1; }, function() { $("#twitter").css("z-index","-1"); $("#twitter").css("display","none"); fb_twit = 0; defaultMenu(); }); $("#facebook_logo,#facebook").hover( function() { $("#facebook").css("z-index","11"); $("#facebook").css("display","initial"); $("#menu1,#menu2,#menu3,#menu4,#menu5,#menu6,#menu7,#menu8,#menu9").css("color", "#004415"); $("#submenu").css("height","0px"); fb_twit = 1; }, function() { $("#facebook").css("z-index","-1"); $("#facebook").css("display","none"); fb_twit = 0; defaultMenu(); }); $("#menu1").hover( function() { a = 1; }); $("#menu2").hover( function() { a = 2; }); $("#menu3").hover( function() { a = 3; }); $("#menu4").hover( function() { a = 4; }); $("#menu5").hover( function() { a = 5; }); $("#menu6").hover( function() { a = 6; }); $("#menu7").hover( function() { a = 7; }); $("#menu8").hover( function() { a = 8; }); $("#menu9").hover( function() { a = 9; }); subhover = 0; menuhover = 0; $("#submenuwrapper").hover( function() { subhover = 1; switch (a) { case 2: $("#menu2").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; case 3: $("#menu3").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; case 4: $("#menu4").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; case 5: $("#menu5").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; case 6: $("#menu6").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; case 7: $("#menu7").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; case 9: $("#menu9").css("color", "#9DC671"); $("#submenu").css("height", "60px"); break; } }, function() { subhover = 0; defaultMenu(); }); $("#menu1,#menu2,#menu3,#menu4,#menu5,#menu6,#menu7,#menu8,#menu9").hover( function() { menuhover = 1; //reset alles en display dan alleen de juiste $("#menu1,#menu2,#menu3,#menu4,#menu5,#menu6,#menu7,#menu8,#menu9").css("color", "#004415"); $("#sub2,#sub3,#sub4,#sub5,#sub6,#sub7,#sub9").css("display","none"); switch (a) { case 1: $("#menu1").css("color", "#9DC671"); $("#submenu").css("height","0px"); break; case 2: $("#menu2").css("color", "#9DC671"); $("#sub2").css("display","block"); $("#submenu").css("height", "60px"); break; case 3: $("#menu3").css("color", "#9DC671"); $("#sub3").css("display","block"); $("#submenu").css("height", "60px"); break; case 4: $("#menu4").css("color", "#9DC671"); $("#sub4").css("display","block"); $("#submenu").css("height", "60px"); break; case 5: $("#menu5").css("color", "#9DC671"); $("#sub5").css("display","block"); $("#submenu").css("height", "60px"); break; case 6: $("#menu6").css("color", "#9DC671"); $("#sub6").css("display","block"); $("#submenu").css("height", "60px"); break; case 7: $("#menu7").css("color", "#9DC671"); $("#sub7").css("display","block"); $("#submenu").css("height", "60px"); break; case 8: $("#menu8").css("color", "#9DC671"); $("#submenu").css("height", "0px"); break; case 9: $("#menu9").css("color", "#9DC671"); $("#sub9").css("display","block"); $("#submenu").css("height", "60px"); break; } }, function() { menuhover = 0; defaultMenu(); }); defaultMenu(); // Show default menu function defaultMenu() { setTimeout(function(){ if (subhover == 1 || menuhover == 1 || fb_twit == 1){ } else{ a = submenu; if (submenu == 1 || submenu == 8 ){ $("#submenu").css("height", "0"); $("#menu1,#menu2,#menu3,#menu4,#menu5,#menu6,#menu7,#menu8,#menu9").css("color", "#004415"); $("#sub2,#sub3,#sub4,#sub5,#sub6,#sub7,#sub9").css("display","none"); $("#menu"+submenu.toString()).css("color", "#9DC671"); } else{ $("#sub2,#sub3,#sub4,#sub5,#sub6,#sub7,#sub9").css("display","none"); $("#submenu").css("height", "60px"); $("#menu1,#menu2,#menu3,#menu4,#menu5,#menu6,#menu7,#menu8,#menu9").css("color", "#004415"); $("#sub"+submenu.toString()).css("display","block"); $("#menu"+submenu.toString()).css("color", "#9DC671"); } } },5); } ! function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], p = /^http:/.test(d.location) ? 'http' : 'https'; if (!d.getElementById(id)) { js = d.createElement(s); js.id = id; js.src = p + "://platform.twitter.com/widgets.js"; fjs.parentNode.insertBefore(js, fjs); } }(document, "script", "twitter-wjs"); (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1&version=v2.3"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); //Content Menu $("#contentToggle").css("height",$("#infoTab").outerHeight()); $("#infoTabContent").css("height",$("#infoTabContent").outerHeight()); $("#infoTab").css("top","calc(50% - " + $("#infoTab").outerHeight()/2 + "px"); if(sessionStorage.getItem('contentMenu') == null){ sessionStorage.contentMenu = "true"; } else{ contentMenuCheck(); } $("#contentToggle").click(function(){ if(sessionStorage.contentMenu == "true"){ $("#infoTab").css("transition","transform 1s"); var scale = 200/$("#infoTab").outerHeight(); $("#infoTab").css("transform","translate(-80%,0) scale(1"+","+scale.toString()); $("#contentToggleImg").css("transform","rotate(180deg)"); sessionStorage.contentMenu = "false"; } else{ $("#infoTab").css("transition","transform 1s"); $("#infoTab").css("transform","translate(0,0) scale(1,1)"); $("#contentToggleImg").css("transform","rotate(0deg)"); sessionStorage.contentMenu = "true"; } }); $(".contentMenuImg").click( function(){ if($("#contentList" + $(this).attr("id").match(/\d+/)).is(":visible")){ $("#contentMenuImg" + $(this).attr("id").match(/\d+/)).css("transform","rotate(0deg)"); } else{ $("#contentMenuImg" + $(this).attr("id").match(/\d+/)).css("transform","rotate(180deg)"); } $("#contentList" + $(this).attr("id").match(/\d+/)).slideToggle(); var el = $(this); el.css("pointer-events", "none"); setTimeout(function(){el.css("pointer-events","auto")},400); } ) }); function contentMenuCheck() { if(sessionStorage.contentMenu == "false"){ $("#infoTab").css("transition","none"); var scale = 200/$("#infoTab").outerHeight(); $("#infoTab").css("transform","translate(-80%,0) scale(1"+","+scale.toString()); $("#contentToggleImg").css("transform","rotate(180deg)"); } }