// Generated by the PixoPoint Menu plugin ... http://pixopoint.com/pixopoint-menu/ (function($) { $.fn.hoverIntent = function(f,g) { // default configuration options var cfg = { sensitivity: "10", interval: "0", 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); //<> jQuery(document).ready(function() { jQuery("ul.sf-menu").superfish({ animation: {opacity:"show",height:"show"}, // fade-in and slide-down animation delay: "500", // delay on mouseout speed: "normal", // animation speed autoArrows: "on", // enable generation of arrow mark-up dropShadows: "" // enable drop shadows }); });