Your example is working fine for me with 1.3.2 - $('a[class!
=whatever]'). $('a[className!=whatever]') should also work.

cheers,
- ricardo

On Mar 18, 9:26 am, will <mac.tas...@gmail.com> wrote:
> Hi,
> Using :not() worked great.
> Cheers
> Will
>
> On Mar 18, 11:09 am, "T.J. Crowder" <t...@crowdersoftware.com> wrote:
>
> > Hi again,
>
> > *blush* Those same docs tell us that != is also supported by Sizzle.
> > Note, though, that:
>
> >     a[class!=whatever]
>
> > ...is the same as
>
> >     a:not([class=whatever])
>
> > ...which is *not* the same as
>
> >     a:not(.whatever)
>
> > ...because of multiple class names.  Example:  With these links:
>
> > <a id='a' href='#'>one</a>
> > <a id='b' href='#' class='whatever'>two</a>
> > <a id='c' href='#' class='whatever blarg'>three</a>
> > <a id='d' href='#' class'blarg'>one</a>
>
> > "a:not(.whatever)" gives you a,d, but "a[class!=whatever]" and "a:not
> > ([class=whatever])" give you a,c,d.  c is on the list because its
> > value ("whatever blarg") does not *exactly* match "whatever".
>
> > Perhaps that relates to why your 1.2.6 code doesn't quite work in 1.3?
>
> > HTH, sorry for missing != support earlier.
> > --
> > T.J. Crowder
> > tj / crowder software / com
> > Independent Software Engineer, consulting services available
>
> > On Mar 18, 10:59 am, "T.J. Crowder" <t...@crowdersoftware.com> wrote:
>
> > > Hi,
>
> > > Is there a != attribute operator?  I don't see it in either the CSS2
> > > or CSS3 specs.[1][2]  So I'm thinking that since jQuery 1.3 completely
> > > replaced the selector engine[3], there was a non-standard (but
> > > useful!) extension to the syntax in v1.2 that didn't get carried
> > > forward.
>
> > > The good news is that the docs[4] for the new selector engine, Sizzle,
> > > tell us it supports the ":not" pseudo-class, so you can use:
>
> > > $('a:not(.whatever)').click(...);
>
> > > ...to get the same effect that (I assume, never having used v1.2) the !
> > > = used to give you.
>
> > > [1]http://www.w3.org/TR/CSS2/selector.html
> > > [2]http://www.w3.org/TR/css3-selectors
> > > [3]http://docs.jquery.com/Release:jQuery_1.3
> > > [4]http://wiki.github.com/jeresig/sizzle
>
> > > HTH,
> > > --
> > > T.J. Crowder
> > > tj / crowder software / com
> > > Independent Software Engineer, consulting services available
>
> > > On Mar 18, 10:21 am, will <mac.tas...@gmail.com> wrote:
>
> > > > I'm working on a project at the moment and this [class!=whatever] has
> > > > stopped working.
> > > > In 1.2.6 I could use this fine, but in 1.3 it doesn't work.
>
> > > > For example, if I have two links:
>
> > > > <a href="#">Link</a>
>
> > > > and
>
> > > > <a href="#" class="whatever">Link</a>
>
> > > > Using a click function like this:
>
> > > > $('a[class!=whatever]').click(function(){ //do something });
>
> > > > Doesn't work. The function wont fire on either.
>
> > > > Is this just a slip up or is it for an actual reason?
>
> > > > Cheers,
> > > > Will

Reply via email to