You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xap-commits@incubator.apache.org by jm...@apache.org on 2007/01/08 23:51:49 UTC
svn commit: r494264 - /incubator/xap/trunk/src/dojo/src/event/browser.js
Author: jmargaris
Date: Mon Jan 8 15:51:48 2007
New Revision: 494264
URL: http://svn.apache.org/viewvc?view=rev&rev=494264
Log:
Timing fix for IE7 where waving the mouse around
while the app is loading can give errors because document.body
is null
Modified:
incubator/xap/trunk/src/dojo/src/event/browser.js
Modified: incubator/xap/trunk/src/dojo/src/event/browser.js
URL: http://svn.apache.org/viewvc/incubator/xap/trunk/src/dojo/src/event/browser.js?view=diff&rev=494264&r1=494263&r2=494264
==============================================================================
--- incubator/xap/trunk/src/dojo/src/event/browser.js (original)
+++ incubator/xap/trunk/src/dojo/src/event/browser.js Mon Jan 8 15:51:48 2007
@@ -242,9 +242,13 @@
if(!evt.currentTarget){ evt.currentTarget = (sender ? sender : evt.srcElement); }
if(!evt.layerX){ evt.layerX = evt.offsetX; }
if(!evt.layerY){ evt.layerY = evt.offsetY; }
+
+ //IMPORTANT dojo can can fail in IE7 if you wave your mouse around
+ //as page loads, document.body can be null at that point
+
// FIXME: scroll position query is duped from dojo.html to avoid dependency on that entire module
- if(!evt.pageX){ evt.pageX = evt.clientX + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0) }
- if(!evt.pageY){ evt.pageY = evt.clientY + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0) }
+ if(!evt.pageX){ evt.pageX = evt.clientX + (window.pageXOffset || document.documentElement.scrollLeft || (document.body?document.body.scrollLeft:0) || 0) }
+ if(!evt.pageY){ evt.pageY = evt.clientY + (window.pageYOffset || document.documentElement.scrollTop || (document.body?document.body.scrollTop:0) || 0) }
// mouseover
if(evt.type == "mouseover"){ evt.relatedTarget = evt.fromElement; }
// mouseout