didnt you forget jQuery.fn.switchClass=function ???

On Mar 23, 7:47 pm, Eric Garside <gars...@gmail.com> wrote:
> Or:
>
> jQuery.fn.switchClass( a, b ){
>    var t = this.hasClass(a);
>    this.addClass( t ? b : a ).removeClass( t ? a : b );
>
> }
>
> On Mar 23, 12:35 pm, "T.J. Crowder" <t...@crowdersoftware.com> wrote:
>
> > Hi,
>
> > You're creating (or worse, overwriting) global variables 'remove' and
> > 'add' there (because you haven't given the 'var' keyword, and thus are
> > creating implicit globals[1]).  The temporaries don't really buy you
> > anything anyway, perhaps simply:
>
> > jQuery.fn.switchClass = function(class1,class2) {
> >     if (this.hasClass(class1)) {
> >         this.removeClass(class1).addClass(class2);
> >     } else {
> >         this.removeClass(class2).addClass(class1);
> >     }
>
> > };
>
> > [1]http://blog.niftysnippets.org/2008/03/horror-of-implicit-globals.html
>
> > FWIW,
> > --
> > T.J. Crowder
> > tj / crowder software / com
> > Independent Software Engineer, consulting services available
>
> > On Mar 23, 1:33 pm, Artistan <artis...@gmail.com> wrote:
>
> > > ///////////////////////////////////////////////////
> > > ///////////   Switch Between Classes    ///////////
> > > ///////////////////////////////////////////////////
> > > jQuery.fn.switchClass = function(class1,class2) {
> > >     if(this.hasClass(class1)){
> > >         remove = class1;
> > >         add = class2;
> > >     } else {
> > >         remove = class2;
> > >         add = class1;
> > >     }
> > >     this.removeClass(remove);
> > >     this.addClass(add);
>
> > > };
>
> > > Hope this helps someone out.

Reply via email to