Can you make a test page available that demontrates this problem? And what version of IE has the problem?
On Oct 13, 6:47 am, Pops <[EMAIL PROTECTED]> wrote: > I am not sure how I missed this early in my plugin development, but I > see it now. > > For my new hover plugin, I noticed jQuery was extending the event > structure with extra mouse information such as: > > event.pageY and event.pageX > > and that this extended event is passed to my show and hide handlers. > > Well, to make a story short, after working out my plugin logic for > screen and viewport dimensions, compensating for scrolls, etc, testing > it under IE, I see that the event pass to me show handler does not > have the extended information. > > In other words, in my function callback: > > function handleShow(e) > { > var mX = e.pageX; > var mY = e.pageY; > ... > > } > > Under IE, the mouse X/Y variables are undefined. > > To fix it, I had to copy some "fix" method logic in jQuery that checks > and sets the event.pageX/Y properties, like so: > > function fixEvent(e) > { > // Calculate pageX/Y if missing and clientX/Y available > // note: IE seems to be the only one that needs this because > // jQuery will add it for others. Don't know why not > // for IE. > if ( e.pageX == null && e.clientX != null ) { > var e = document.documentElement, b = document.body; > e.pageX = e.clientX + (e && e.scrollLeft || b.scrollLeft || 0); > e.pageY = e.clientY + (e && e.scrollTop || b.scrollTop || 0); > } > return e; > > } > > function handleShow(e) > { > e = fixEvent(e) > var mX = e.pageX; > var mY = e.pageY; > ... > > } > > Again, I don't know how I missed this early on because I was testing > IE and FF as I was doing my work. But in the final analysis, this > is the behavior I am seeing under IE only. > > Why would jQuery not set the extended event info with IE? > > Thanks in advance. > > -- > HLS