Thanks for the fast response.
Unfortunately it doesn't work :(


2009/2/3 Eric Garside <gars...@gmail.com>

>
> Try this:
>
> var containerSelecteds = function() {
>      return $('ul.selected', container);
> };
>
> I've had pretty good luck using that syntax instead of using .find()
> or .children(). It might solve the problem on safari (as I think the
> reason I stopped using find() or children() was that the above was
> much more reliable on my mac for doing dev work.)
>
> On Feb 3, 10:39 am, Javier Martinez <ecentin...@gmail.com> wrote:
> > I'm creating a component for an application I'm developing and I have
> > upgraded jquery to the last version to get it's speed boost.
> > After some testing I have seen that my component is not working correctly
> in
> > webkit browsers because there is some bug with the new Sizzle selector of
> > the new jquery.
> > I can't provide my source files, but I have created a simple test case
> that
> > shows this error.
> >
> > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
> >     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
> > <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en" lang="en">
> > <head>
> >     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
> >     <script type="text/javascript" src="jquery.js"></script>
> >     <script type="text/javascript">
> >         $(function() {
> >             var container = $('#container');
> >
> >             var containerSelecteds = function() {
> >                 return container.find('ul.selected');
> >             };
> >
> >             var bodySelecteds = function() {
> >                 return $('ul.selected');
> >             };
> >
> >             var select = function(nodes) {
> >                 containerSelecteds().removeClass('selected');
> >
> >                 nodes.addClass('selected');
> >
> >                 // the container html show me that the element has the
> class
> > "selected"
> >                 alert(container.html());
> >
> >                 // webkit (chrome and safari) says that there are no
> > elements inside of <container> with the class "selected"
> >                 alert(containerSelecteds().length);
> >
> >                 // but the element exists in the dom, and it has the
> > classname "selected" !!
> >                 alert(bodySelecteds().length);
> >             };
> >
> >             var element = $('<ul
> > class="someclass"><li>MyText</li></ul>').appendTo(container);
> >             select(element, false);
> >         });
> >     </script>
> > </head>
> > <body>
> >     <div id="container" style="border:1px solid
> > #ccc;height:300px;width:300px"></div>
> > </body>
> > </html>
> >
> > I will try to explain the error: I'm inserting a node inside the
> "container"
> > div, and applying a classname "selected" to this node. After this, I want
> to
> > select the nodes inside "container" that have this classname. Firefox,
> IE,
> > etc, says that there is one node inside "container". But webkit browsers
> > says that there is a node with this classname in the dom, but not inside
> > "container".
> >
> > I think that this is a quite simple css selector, so I don't know why it
> > fails.
> >
> > Thanks.
> >
> > PD: it doesn't fails with jquery 1.2.6
>

Reply via email to