Thanks  Karl , It helped me alot

On Feb 1, 9:47 am, Karl Swedberg <k...@englishrules.com> wrote:
> On Feb 1, 2009, at 3:06 AM, Pedram wrote:
>
>
>
> > I have another  tiny question
> >  $("Ul li a"), $("ul a"), $("a",$("ul"))
> > which one has the great performance !!?
>
> I would go with either $('ul a') or $('a', 'ul'), but $('ul a') seems  
> more readable to me, as it follows the CSS syntax.
>
> Since it's not possible in a valid DOM to have an A that is a  
> descendant of a UL but not a descendant of an LI, the LI is  
> superfluous. No need to do an extra getElementsByTagName there.
>
> Also, if you're using a contextual selector, you don't need to wrap  
> the context in its own jQuery object -- $("a",$("ul")).
>
> --Karl
>
> > On Feb 1, 12:02 am, Pedram <pedram...@gmail.com> wrote:
> >> I just had some Doubt , the performance is great
>
> >> On Jan 31, 11:54 am, Karl Swedberg <k...@englishrules.com> wrote:
>
> >>> Hi Pedram,
>
> >>> I agree with Nic. Especially if you're only dealing with 4 elements,
> >>> binding directly on them seems like the most sensible solution.
>
> >>> Are you noticing performance problems? You shouldn't be seeing any,
> >>> with scripts this basic. In any case, there are a couple selector
> >>> optimizations you could implement, if necessary. Something like  
> >>> this:
>
> >>> var $navBarLinks = $('#your-nav-bar-id a');
>
> >>> $navBarLinks.click(function() {
> >>>    $navBarLinks.removeClass('active');
> >>>    $(this).addClass('active');
>
> >>> });
>
> >>> --Karl
>
> >>> ____________
> >>> Karl Swedbergwww.englishrules.comwww.learningjquery.com
>
> >>> On Jan 31, 2009, at 2:36 PM, Pedram wrote:
>
> >>>> I'm looking to improve the performance ,  which of these 2 codes  
> >>>> has
> >>>> the best performance.
>
> >>>> On Jan 30, 1:04 am, Nic Luciano <adaptive...@gmail.com> wrote:
> >>>>> What exactly are you trying to do, what is the issue? Maybe just
> >>>>> preference
> >>>>> here (and I'm also just guessing what you're asking) but I don't
> >>>>> see a
> >>>>> reason not to put the events on the elements themselves
>
> >>>>> $("ul li a").click(function() {
> >>>>>         $
> >>>>> (this).parent().parent().find(".active").removeClass("active");
> >>>>>         $(this).addClass("active");
> >>>>>     });
>
> >>>>> On Fri, Jan 30, 2009 at 3:07 AM, Pedram <pedram...@gmail.com>  
> >>>>> wrote:
>
> >>>>>> Dear Karl ,
> >>>>>> I know You are Expert in these Issues do you have any idea for me
> >>>>>> Thanks
>
> >>>>>> On Jan 29, 5:44 pm, Pedram <pedram...@gmail.com> wrote:
> >>>>>>> Hi Folks ,
> >>>>>>>   I have some links in my Navigation bar such as below , I Used
> >>>>>>> FIND
> >>>>>>> in my code , does anyone has any better solution for me ,
> >>>>>>>   I also used Event Delegation in the system .
>
> >>>>>>> <ul>
> >>>>>>>   <li><a href="#" class="active>a</a></li>
> >>>>>>>   <li><a href="#">b</a></li>
> >>>>>>>   <li><a href="#">c</a></li>
> >>>>>>>   <li><a href="#">d</a></li>
> >>>>>>> </ul>
>
> >>>>>>>   $("ul").bind("click",function(e){
> >>>>>>>       var clicked=$(e.target);
> >>>>>>>       $(this).find("a.active").removeClass("active");
> >>>>>>>       clicked.addClass("active");
> >>>>>>>   });

Reply via email to