On 10/3/06, Brandon Aaron <[EMAIL PROTECTED]> wrote:
> Okay ... So instead of this:
> while ( p && p != this ) try { p = p.parentNode } catch(e) { p = null; };
>
> I should have set p = this like this:
> while ( p && p != this ) try { p = p.parentNode } catch(e) { p = this; };
>
> You can see it working here:
> http://brandonaaron.net/jquery/hoverbug/hover.patched.html
>
> I'll update the ticket now.

Thanks, Brandon. I hope this goes soon into SVN (meanwhile I've
modified my copy).

-- 
Choan C. Gálvez, desarrollo web
<http://choangalvez.nom.es/>

> On 10/3/06, Brandon Aaron <[EMAIL PROTECTED]> wrote:
> > Sure enough... looking into a better fix now.
> >
> > --
> > Brandon Aaron
> >
> > On 10/3/06, Choan C. Gálvez <[EMAIL PROTECTED]> wrote:
> > > Hi all.
> > >
> > > There has been some recent posts on this mailing list about a bug in
> > > Firefox related to jQuery`s `hover` functionality. (Subjects "Uncaught
> > > exception (Autocomplete / jQuery 1.0.1)", "bug: hover over table cells
> > > containing form elements" and "Input text hover error".)
> > >
> > > Theoretically, this bug was resolved in Rev 375. Unfortunately, the
> > > solution doesn't work quite well :(
> > >
> > > Let me describe the situation:
> > >
> > > HTML:
> > >
> > > <div id="test">
> > >     <form ...>
> > >         <input type="text" ... />
> > >     </form>
> > > </div>
> > >
> > > CSS:
> > >
> > > #test {
> > >     background: black;
> > >     padding: 20px; /* make it obvious */
> > > }
> > >
> > > #test.over {
> > >     background: #ccc;
> > > }
> > >
> > > JS:
> > >
> > > $(function() {
> > >     $("#test").hover(
> > >         function() { $(this).addClass("over"); },
> > >         function() { $(this).removeClass("over"); },
> > >     );
> > > });
> > >
> > > Trouble is, in svn versions previous to Rev 375, Mozilla based
> > > browsers raise an exception while abandoning the `input` (this is a
> > > Mozilla bug [1]). I can live with that as it doesn't break my code.
> > >
> > > Since Rev 375, there is a new code to handle exceptions (in events.js):
> > >
> > >     while ( p && p != this ) try { p = p.parentNode } catch(e) { p = 
> > > null; };
> > >
> > > Well, now the exception is catched. Good. But the `mouseover` function
> > > is called when the mouse hovers the input. This _breaks_ my code.
> > >
> > > So, could we have a better workaround? I've tried with no success :(
> > >
> > > [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=208427
> > > --
> > > Choan
> > > <http://choangalvez.nom.es/>
_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/

Reply via email to