Make sure that we don't attempt to handle scrolling when the node is disconnected from the document. Fixes #7190.

This commit is contained in:
John Resig 2010-10-14 14:52:31 -04:00
parent d490bcfa7c
commit ea507b3e99

View file

@ -23,14 +23,17 @@ if ( "getBoundingClientRect" in document.documentElement ) {
try { try {
box = elem.getBoundingClientRect(); box = elem.getBoundingClientRect();
} catch(e) {}
} catch(e) {
return { top: 0, left: 0 };
}
var doc = elem.ownerDocument, var doc = elem.ownerDocument,
body = doc.body, docElem = doc.documentElement;
docElem = doc.documentElement,
// Make sure we're not dealing with a disconnected DOM node
if ( !box || !jQuery.contains( docElem, elem ) ) {
return box || { top: 0, left: 0 };
}
var body = doc.body,
win = getWindow(doc), win = getWindow(doc),
clientTop = docElem.clientTop || body.clientTop || 0, clientTop = docElem.clientTop || body.clientTop || 0,
clientLeft = docElem.clientLeft || body.clientLeft || 0, clientLeft = docElem.clientLeft || body.clientLeft || 0,