Team:METU-Ankara/Extras

From 2011.igem.org

(Difference between revisions)
(Created page with "/** * nmcDropDown plugin - v1.0.5 * Author: Eli Van Zoeren * Copyright (c) 2009 New Media Campaigns * http://www.newmediacampaigns.com * ------------------------------------...")
 
(6 intermediate revisions not shown)
Line 1: Line 1:
 +
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 +
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 +
 +
 
 +
    <!--[if IE 7]><link href="css/ie7.css" rel="stylesheet" type="text/css" media="all" /><![endif]-->
 +
    <!--[if IE 6]><link href="css/ie6.css" rel="stylesheet" type="text/css" media="all" /><![endif]-->
 +
   
 +
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
 +
    <script type="text/javascript">
 +
$(document).ready(function() {
 +
     
 +
// Setup the nav drop-downs
 +
$('#nav').nmcDropDown({
 +
    show: {height: 'show', opacity: 'show'}
 +
});
 +
 +
// Setup the sidebar panel drop-downs
 +
$('#sidebarNav').nmcDropDown({
 +
    trigger: 'click',
 +
    submenu_selector: 'p',
 +
    show: {height: 'show'},
 +
    hide: {height: 'hide'}
 +
});
 +
 +
});
 +
 +
/**
/**
-
  * nmcDropDown plugin - v1.0.5
+
  * nmcDropDown plugin - v1.0.3
  * Author: Eli Van Zoeren
  * Author: Eli Van Zoeren
  * Copyright (c) 2009 New Media Campaigns
  * Copyright (c) 2009 New Media Campaigns
-
  * http://www.newmediacampaigns.com
+
  * http://www.newmediacampaigns.com  
-
* ---------------------------------------------
+
-
* Usage: $('#nav').nmcDropDown({[options]});
+
-
*
+
-
* See below for configuration options. If you
+
-
* don't pass in any options, the plugin will
+
-
* Use reasonable defaults.
+
-
*
+
-
* Dependancy: jQuery 1.2.6+
+
-
* Optional depenancy: hoverIntent plugin
+
-
*  http://cherne.net/brian/resources/jquery.hoverIntent.html 
+
  **/
  **/
-
(function($) {
+
(function(a){a.fn.nmcDropDown=function(b){var c=a.extend({},a.fn.nmcDropDown.defaults,b);return this.each(function(){menu=a(this);submenus=menu.children("li:has("+c.submenu_selector+")");if(c.fix_IE){menu.css("z-index",51).parents().each(function(d){if(a(this).css("position")=="relative"){a(this).css("z-index",(d+52))}});submenus.children(c.submenu_selector).css("z-index",50)}over=function(){a(this).addClass(c.active_class).children(c.submenu_selector).animate(c.show,c.show_speed);return false};out=function(){a(this).removeClass(c.active_class).children(c.submenu_selector).animate(c.hide,c.hide_speed);return false};if(c.trigger=="click"){submenus.toggle(over,out).children(c.submenu_selector).hide()}else{if(a().hoverIntent){submenus.hoverIntent({interval:c.show_delay,over:over,timeout:c.hide_delay,out:out}).children(c.submenu_selector).hide()}else{submenus.hover(over,out).children(c.submenu_selector).hide()}}})};a.fn.nmcDropDown.defaults={trigger:"hover",active_class:"open",submenu_selector:"ul",show:{opacity:"show"},show_speed:300,show_delay:50,hide:{opacity:"hide"},hide_speed:200,hide_delay:100,fix_IE:true}})(jQuery);
-
    $.fn.nmcDropDown = function(options) {
+
 
 +
/**
 +
* hoverIntent r5 // 2007.03.27 // jQuery 1.1.2+
 +
* <http://cherne.net/brian/resources/jquery.hoverIntent.html>
 +
*
 +
* @param  f  onMouseOver function || An object with configuration options
 +
* @param  g  onMouseOut function  || Nothing (use configuration options object)
 +
* @author    Brian Cherne <brian@cherne.net>
 +
*/
 +
(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:7,interval:100,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY;};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind("mousemove",track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev]);}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev]);};var handleHover=function(e){var p=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;while(p&&p!=this){try{p=p.parentNode;}catch(e){p=this;}}if(p==this){return false;}var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);}if(e.type=="mouseover"){pX=ev.pageX;pY=ev.pageY;$(ob).bind("mousemove",track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}}else{$(ob).unbind("mousemove",track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob);},cfg.timeout);}}};return this.mouseover(handleHover).mouseout(handleHover);};})(jQuery);
-
        // build main options before element iteration
+
</script>
-
        var opts = $.extend({}, $.fn.nmcDropDown.defaults, options);
+
</head>
 +
 
 +
<body>
 +
 
 +
            <ul id="nav">
 +
                <li><a href="#">Item One</a>
 +
                  <ul>
 +
                    <li><a href="#">Sub-menu Item 1</a></li>
 +
                    <li><a href="#">Sub-menu Item 2</a></li>
 +
                    <li><a href="#">Sub-menu Item 3</a></li>
 +
                    <li><a href="#">Sub-menu Item 4</a></li>
 +
                  </ul>
 +
                </li>
 +
              <li><a href="#">Item Two</a>
 +
                  <ul>
 +
                    <li><a href="#">Sub-menu Item 1</a></li>
 +
                    <li><a href="#">Sub-menu Item 2</a></li>
 +
                    <li><a href="#">Sub-menu Item 3</a></li>
 +
                    <li><a href="#">Sub-menu Item 4</a></li>
 +
                  </ul>
 +
                </li>
 +
            <li><a href="#">Item Three</a>
 +
                  <ul>
 +
                    <li><a href="#">Sub-menu Item 1</a></li>
 +
                    <li><a href="#">Sub-menu Item 2</a></li>
 +
                    <li><a href="#">Sub-menu Item 3</a></li>
 +
                    <li><a href="#">Sub-menu Item 4</a></li>
 +
                  </ul>
 +
                </li>
 +
            <li><a href="#">Item Three</a>
 +
                  <ul>
 +
                    <li><a href="#">Sub-menu Item 1</a></li>
 +
                    <li><a href="#">Sub-menu Item 2</a></li>
 +
                    <li><a href="#">Sub-menu Item 3</a></li>
 +
                    <li><a href="#">Sub-menu Item 4</a></li>
 +
                  </ul>
 +
                </li>
 +
            </ul>
 +
 
-
        // iterate each matched element
+
<script type="text/javascript">   
-
        return this.each(function() {
+
  var _gaq = _gaq || [];
-
            var menu = $(this);
+
  _gaq.push(['_setAccount', 'UA-499901-76']);
-
            submenus = menu.children('li:has('+opts.submenu_selector+')');
+
  _gaq.push(['_trackPageview']);
-
           
+
-
            if (opts.fix_IE) {
+
-
                // Fix IE 6+7 z-index bug
+
-
                menu.css('z-index', 51)
+
-
                    .parents().each(function(i) {
+
-
                        if ($(this).css('position') == 'relative') {
+
-
                            $(this).css('z-index', (i + 52));
+
-
                        }
+
-
                    });
+
-
                submenus.children(opts.submenu_selector).css('z-index', 50);
+
-
            }
+
-
+
-
            // Function that is called to show the submenu
+
-
            over = function(e) {
+
-
                $(e || this)
+
-
                .addClass(opts.active_class)
+
-
                    .children(opts.submenu_selector).animate(opts.show, opts.show_speed);
+
-
                return false;
+
-
            }
+
-
+
-
            // Function that is called to hide the submenu
+
-
            out = function(e) {
+
-
            $(e || this)
+
-
            .removeClass(opts.active_class)
+
-
                    .children(opts.submenu_selector).animate(opts.hide, opts.hide_speed);
+
-
                return false;
+
-
            }
+
-
+
-
            // Show and hide the sub-menus
+
-
            if (opts.trigger == 'click') {
+
-
                submenus
+
-
                    .click(function(event) {
+
-
                    if ($(event.target).parent().get(0) == this) {
+
-
                    event.preventDefault();
+
-
                    $(this).hasClass(opts.active_class) ? out(this) : over(this);
+
-
                    }
+
-
                    })
+
-
                    .children(opts.submenu_selector).hide();
+
-
            } else if ($().hoverIntent) {
+
-
                submenus
+
-
                    .hoverIntent({
+
-
                        interval: opts.show_delay,
+
-
                        over: over,
+
-
                        timeout: opts.hide_delay,
+
-
                        out: out
+
-
                    }).children(opts.submenu_selector).hide();
+
-
            } else {
+
-
                submenus
+
-
                    .hover(over, out)
+
-
                    .children(opts.submenu_selector).hide();
+
-
            }
+
-
        });
+
-
    };
+
-
    // Default options
+
  (function() {
-
     $.fn.nmcDropDown.defaults = {
+
     var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-
        trigger: 'hover',          // Event to show and hide sub-menu - hover or click
+
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-
        active_class: 'open',      // Class to give open menu items
+
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-
        submenu_selector: 'ul',    // The element immediately below the <li> containing the sub-menu
+
  })();
-
        show: {opacity: 'show'},    // Effect(s) to use when showing the sub-menu
+
-
        show_speed: 300,            // Speed of the show transition
+
-
        show_delay: 50,            // Delay before the sub-menu is show (requires HoverIntent)
+
-
        hide: {opacity: 'hide'},   // Effect(s) to use when hiding the sub-menu
+
-
        hide_speed: 200,            // Speed of the hide transition
+
-
        hide_delay: 100,            // Delay before the sub-menu is hidden (requires HoverIntent)
+
-
        fix_IE: true                // IE 6 and 7 have problems with z-indexes. This tries to fix them
+
-
    };
+
-
})(jQuery);
+
</script>
 +
</body>
 +
</html>

Latest revision as of 23:38, 5 August 2011

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">