Hmmm....

At the risk of starting another flame war on the etiquette of dealing with
user queries:

http://lmgtfy.com/?q=superfish+display+menu+on+click+not+hover

:-)

--
Evolution (n): A hypothetical process whereby infinitely improbable events
occur with alarming frequency, order arises from chaos, and no one is given
credit.



On 8 September 2011 05:48, Samuel Alioni <[email protected]> wrote:

> Hello, i am quite new to javascript and jquery, but now found myself in a
> trap with superfish menu. I want superfish to expand my primary menu and
> display submenu items as well but only after selecting the appropriate menu
> and not to move away until another selection is made. But currently submenus
> are displayed onHover only.
>
> Can some one help please? here is the superfishmenu js script.
>
>
> /*
>  * Superfish v1.4.8 - jQuery menu widget
>  * Copyright (c) 2008 Joel Birch
>  *
>  * Dual licensed under the MIT and GPL licenses:
>  *     http://www.opensource.org/licenses/mit-license.php
>  *     http://www.gnu.org/licenses/gpl.html
>  *
>  */
>
> ;(function($){
>     $.fn.superfish = function(op){
>
>         var sf = $.fn.superfish,
>             c = sf.c,
>             $arrow = $(['<span
> class="',c.arrowClass,'"></span>'].join('')),
>             over = function(){
>                 var $$ = $(this), menu = getMenu($$);
>                 clearTimeout(menu.sfTimer);
>                 $$.showSuperfishUl().siblings().hideSuperfishUl();
>             },
>             out = function(){
>                 var $$ = $(this), menu = getMenu($$), o = sf.op;
>                 clearTimeout(menu.sfTimer);
>                 menu.sfTimer=setTimeout(function(){
>                     o.retainPath=($.inArray($$[0],o.$path)>-1);
>                     $$.hideSuperfishUl();
>                     if (o.$path.length &&
> $$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);}
>                 },o.delay);
>             },
>             getMenu = function($menu){
>                 var menu =
> $menu.parents(['ul.',c.menuClass,':first'].join(''))[0];
>                 sf.op = sf.o[menu.serial];
>                 return menu;
>             },
>             addArrow = function($a){
> $a.addClass(c.anchorClass).append($arrow.clone()); };
>
>         return this.each(function() {
>             var s = this.serial = sf.o.length;
>             var o = $.extend({},sf.defaults,op);
>             o.$path =
> $('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){
>                 $(this).addClass([o.hoverClass,c.bcClass].join(' '))
>                     .filter('li:has(ul)').removeClass(o.pathClass);
>             });
>             sf.o[s] = sf.op = o;
>
>             $('li:has(ul)',this)[($.fn.hoverIntent && !o.disableHI) ?
> 'hoverIntent' : 'hover'](over,out).each(function() {
>                 if (o.autoArrows) addArrow( $('>a:first-child',this) );
>             })
>             .not('.'+c.bcClass)
>                 .hideSuperfishUl();
>
>             var $a = $('a',this);
>             $a.each(function(i){
>                 var $li = $a.eq(i).parents('li');
>
> $a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);});
>             });
>             o.onInit.call(this);
>
>         }).each(function() {
>             var menuClasses = [c.menuClass];
>             if (sf.op.dropShadows  && !($.browser.msie && $.browser.version
> < 7)) menuClasses.push(c.shadowClass);
>             $(this).addClass(menuClasses.join(' '));
>         });
>     };
>
>     var sf = $.fn.superfish;
>     sf.o = [];
>     sf.op = {};
>     sf.IE7fix = function(){
>         var o = sf.op;
>         if ($.browser.msie && $.browser.version > 6 && o.dropShadows &&
> o.animation.opacity!=undefined)
>             this.toggleClass(sf.c.shadowClass+'-off');
>         };
>     sf.c = {
>         bcClass     : 'sf-breadcrumb',
>         menuClass   : 'sf-js-enabled',
>         anchorClass : 'sf-with-ul',
>         arrowClass  : 'sf-sub-indicator',
>         shadowClass : 'sf-shadow'
>     };
>     sf.defaults = {
>         hoverClass    : 'sfHover',
>         pathClass    : 'overideThisToUse',
>         pathLevels    : 1,
>         delay        : 0,
>         animation    : {opacity:'show'},
>         speed        : 'normal',
>         autoArrows    : true,
>         dropShadows : true,
>         disableHI    : false,        // true disables hoverIntent detection
>         onInit        : function(){}, // callback functions
>         onBeforeShow: function(){},
>         onShow        : function(){},
>         onHide        : function(){}
>     };
>     $.fn.extend({
>         hideSuperfishUl : function(){
>             var o = sf.op,
>                 not = (o.retainPath===true) ? o.$path : '';
>             o.retainPath = false;
>             var $ul =
> $(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass)
>                     .find('>ul').hide().css('visibility','hidden');
>             o.onHide.call($ul);
>             return this;
>         },
>         showSuperfishUl : function(){
>             var o = sf.op,
>                 sh = sf.c.shadowClass+'-off',
>                 $ul = this.addClass(o.hoverClass)
>                     .find('>ul:hidden').css('visibility','visible');
>             sf.IE7fix.call($ul);
>             o.onBeforeShow.call($ul);
>             $ul.animate(o.animation,o.speed,function(){
> sf.IE7fix.call($ul); o.onShow.call($ul); });
>             return this;
>         }
>     });
>
> })(jQuery);
>
> --
> *Regards
> Samuel Alioni
> ======================================================================
>
> Own a Beautiful website today at an incredibly low price.
> Take that advantage today Contact us Now at:
> *
>
> Room A15 Kabalagala Market
> P.O.Box 8747 Kampala
> +256 712 886802,772044264
> Website: www.samatechcomputers.com
> Email: [email protected]
> Skype: samatech3
> Facebook:www.facebook.com/samatech
> Twitter: www.twitter.com/samatech7
>
>
>
> _______________________________________________
> The Uganda Linux User Group: http://linux.or.ug
>
> Send messages to this mailing list by addressing e-mails to:
> [email protected]
> Mailing list archives: http://www.mail-archive.com/[email protected]/
> Mailing list settings: http://kym.net/mailman/listinfo/lug
> To unsubscribe: http://kym.net/mailman/options/lug
>
> The Uganda LUG mailing list is generously hosted by INFOCOM:
> http://www.infocom.co.ug/
>
> The above comments and data are owned by whoever posted them (including
> attachments if any). The mailing list host is not responsible for them in
> any way.
>
_______________________________________________
The Uganda Linux User Group: http://linux.or.ug

Send messages to this mailing list by addressing e-mails to: [email protected]
Mailing list archives: http://www.mail-archive.com/[email protected]/
Mailing list settings: http://kym.net/mailman/listinfo/lug
To unsubscribe: http://kym.net/mailman/options/lug

The Uganda LUG mailing list is generously hosted by INFOCOM: 
http://www.infocom.co.ug/

The above comments and data are owned by whoever posted them (including 
attachments if any). The mailing list host is not responsible for them in any 
way.

Reply via email to