]> source.dussan.org Git - jquery.git/commitdiff
Fix #11823. Remove webkitConvertPointFromNodeToPage. Closes gh-796.
authorOleg <markelog@gmail.com>
Sun, 27 May 2012 16:37:35 +0000 (12:37 -0400)
committerDave Methvin <dave.methvin@gmail.com>
Sun, 27 May 2012 16:37:35 +0000 (12:37 -0400)
build/jshint-check.js
grunt.js
src/offset.js

index b33beaad594dd5bf3ae858a143aabba8ff0ad16e..2594539318b887112f9358ecfbe60067d54a3330 100644 (file)
@@ -12,8 +12,7 @@
                        smarttabs: true,
                        predef: [
                                "define",
-                               "DOMParser",
-                               "WebKitPoint"
+                               "DOMParser"
                        ],
                        maxerr: 100
                };
index fa96f83367cab17ea1fc40a491c8c49d9812317f..2313bb27a83c7b1c079250d4dc539397c4b51226 100644 (file)
--- a/grunt.js
+++ b/grunt.js
@@ -84,7 +84,6 @@ module.exports = function( grunt ) {
                                predef: [
                                        "define",
                                        "DOMParser",
-                                       "WebKitPoint",
                                        "__dirname"
                                ],
                                maxerr: 100
index 1288b79fff86301a75739adfaadf5e9a81045357..728777621b7e09517829999b0d95fcfe1802043e 100644 (file)
@@ -1,43 +1,6 @@
 (function( jQuery ) {
 
-var getOffset,
-       rroot = /^(?:body|html)$/i;
-
-if ( "getBoundingClientRect" in document.documentElement ) {
-       getOffset = function( elem, doc, docElem ) {
-               var box;
-
-               try {
-                       box = elem.getBoundingClientRect();
-               } catch(e) {}
-
-               // Make sure we're not dealing with a disconnected DOM node
-               if ( !box || !jQuery.contains( docElem, elem ) ) {
-                       return box ? { top: box.top, left: box.left } : { top: 0, left: 0 };
-               }
-
-               var body = doc.body,
-                       win = getWindow( doc ),
-                       clientTop  = docElem.clientTop  || body.clientTop  || 0,
-                       clientLeft = docElem.clientLeft || body.clientLeft || 0,
-                       scrollTop  = win.pageYOffset || docElem.scrollTop,
-                       scrollLeft = win.pageXOffset || docElem.scrollLeft,
-                       top  = box.top  + scrollTop  - clientTop,
-                       left = box.left + scrollLeft - clientLeft;
-
-               return { top: top, left: left };
-       };
-
-} else {
-       getOffset = function( elem, doc, docElem ) {
-               if ( !jQuery.contains( docElem, elem ) ) {
-                       return { top: 0, left: 0 };
-               }
-               var point = getWindow( doc ).webkitConvertPointFromNodeToPage( elem, new WebKitPoint( 0, 0 ) );
-               return { top: point.y, left: point.x };
-
-       };
-}
+var rroot = /^(?:body|html)$/i;
 
 jQuery.fn.offset = function( options ) {
        if ( arguments.length ) {
@@ -48,18 +11,39 @@ jQuery.fn.offset = function( options ) {
                        });
        }
 
-       var elem = this[0],
+       var docElem, body, win, clientTop, clientLeft, scrollTop, scrollLeft, top, left,
+               box = {},
+               elem = this[ 0 ],
                doc = elem && elem.ownerDocument;
 
        if ( !doc ) {
                return null;
        }
 
-       if ( elem === doc.body ) {
+       if ( (body = doc.body) === elem ) {
                return jQuery.offset.bodyOffset( elem );
        }
 
-       return getOffset( elem, doc, doc.documentElement );
+       docElem = doc.documentElement;
+
+       try {
+               box = elem.getBoundingClientRect();
+       } catch(e) {}
+
+       // Make sure we're not dealing with a disconnected DOM node
+       if ( !box.top || !jQuery.contains( docElem, elem ) ) {
+               return { top: box.top || 0, left: box.left || 0 };
+       }
+
+       win = getWindow( doc );
+       clientTop  = docElem.clientTop  || body.clientTop  || 0;
+       clientLeft = docElem.clientLeft || body.clientLeft || 0;
+       scrollTop  = win.pageYOffset || docElem.scrollTop;
+       scrollLeft = win.pageXOffset || docElem.scrollLeft;
+       top  = box.top  + scrollTop  - clientTop;
+       left = box.left + scrollLeft - clientLeft;
+
+       return { top: top, left: left };
 };
 
 jQuery.offset = {
@@ -201,4 +185,4 @@ function getWindow( elem ) {
                        false;
 }
 
-})( jQuery );
+})( jQuery );
\ No newline at end of file