Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Core: Deprecate jQuery.isWindow
- Loading branch information
|
@@ -16,10 +16,11 @@ define( [ |
|
|
"./var/fnToString", |
|
|
"./var/ObjectFunctionString", |
|
|
"./var/support", |
|
|
"./var/isWindow", |
|
|
"./core/DOMEval" |
|
|
], function( arr, document, getProto, slice, concat, push, indexOf, |
|
|
class2type, toString, hasOwn, fnToString, ObjectFunctionString, |
|
|
support, DOMEval ) { |
|
|
support, isWindow, DOMEval ) { |
|
|
|
|
|
"use strict"; |
|
|
|
|
@@ -220,10 +221,6 @@ jQuery.extend( { |
|
|
return typeof obj === "function" && typeof obj.nodeType !== "number"; |
|
|
}, |
|
|
|
|
|
isWindow: function( obj ) { |
|
|
return obj != null && obj === obj.window; |
|
|
}, |
|
|
|
|
|
isNumeric: function( obj ) { |
|
|
|
|
|
// As of jQuery 3.0, isNumeric is limited to |
|
@@ -469,7 +466,7 @@ function isArrayLike( obj ) { |
|
|
var length = !!obj && "length" in obj && obj.length, |
|
|
type = jQuery.type( obj ); |
|
|
|
|
|
if ( jQuery.isFunction( obj ) || jQuery.isWindow( obj ) ) { |
|
|
if ( jQuery.isFunction( obj ) || isWindow( obj ) ) { |
|
|
return false; |
|
|
} |
|
|
|
|
|
|
|
@@ -1,7 +1,8 @@ |
|
|
define( [ |
|
|
"./core", |
|
|
"./core/nodeName" |
|
|
], function( jQuery, nodeName ) { |
|
|
"./core/nodeName", |
|
|
"./var/isWindow" |
|
|
], function( jQuery, nodeName, isWindow ) { |
|
|
|
|
|
"use strict"; |
|
|
|
|
@@ -36,5 +37,6 @@ jQuery.holdReady = function( hold ) { |
|
|
jQuery.isArray = Array.isArray; |
|
|
jQuery.parseJSON = JSON.parse; |
|
|
jQuery.nodeName = nodeName; |
|
|
jQuery.isWindow = isWindow; |
|
|
|
|
|
} ); |
|
|
@@ -1,8 +1,9 @@ |
|
|
define( [ |
|
|
"./core", |
|
|
"./core/access", |
|
|
"./var/isWindow", |
|
|
"./css" |
|
|
], function( jQuery, access ) { |
|
|
], function( jQuery, access, isWindow ) { |
|
|
|
|
|
"use strict"; |
|
|
|
|
@@ -19,7 +20,7 @@ jQuery.each( { Height: "height", Width: "width" }, function( name, type ) { |
|
|
return access( this, function( elem, type, value ) { |
|
|
var doc; |
|
|
|
|
|
if ( jQuery.isWindow( elem ) ) { |
|
|
if ( isWindow( elem ) ) { |
|
|
|
|
|
// $( window ).outerWidth/Height return w/h including scrollbars (gh-1729) |
|
|
return funcName.indexOf( "outer" ) === 0 ? |
|
|
|
@@ -4,9 +4,9 @@ define( [ |
|
|
"../data/var/dataPriv", |
|
|
"../data/var/acceptData", |
|
|
"../var/hasOwn", |
|
|
|
|
|
"../var/isWindow", |
|
|
"../event" |
|
|
], function( jQuery, document, dataPriv, acceptData, hasOwn ) { |
|
|
], function( jQuery, document, dataPriv, acceptData, hasOwn, isWindow ) { |
|
|
|
|
|
"use strict"; |
|
|
|
|
@@ -76,7 +76,7 @@ jQuery.extend( jQuery.event, { |
|
|
|
|
|
// Determine event propagation path in advance, per W3C events spec (#9951) |
|
|
// Bubble up to document, then to window; watch for a global ownerDocument var (#9724) |
|
|
if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { |
|
|
if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { |
|
|
|
|
|
bubbleType = special.delegateType || type; |
|
|
if ( !rfocusMorph.test( bubbleType + type ) ) { |
|
@@ -128,7 +128,7 @@ jQuery.extend( jQuery.event, { |
|
|
|
|
|
// Call a native DOM method on the target with the same name as the event. |
|
|
// Don't do default actions on window, that's where global variables be (#6170) |
|
|
if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) { |
|
|
if ( ontype && jQuery.isFunction( elem[ type ] ) && !isWindow( elem ) ) { |
|
|
|
|
|
// Don't re-trigger an onFOO event when we call its FOO() method |
|
|
tmp = elem[ ontype ]; |
|
|
|
@@ -7,12 +7,12 @@ define( [ |
|
|
"./css/curCSS", |
|
|
"./css/addGetHookIf", |
|
|
"./css/support", |
|
|
|
|
|
"./var/isWindow", |
|
|
"./core/init", |
|
|
"./css", |
|
|
"./selector" // contains |
|
|
], function( jQuery, access, document, documentElement, rnumnonpx, |
|
|
curCSS, addGetHookIf, support ) { |
|
|
curCSS, addGetHookIf, support, isWindow ) { |
|
|
|
|
|
"use strict"; |
|
|
|
|
@@ -186,7 +186,7 @@ jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( |
|
|
|
|
|
// Coalesce documents and windows |
|
|
var win; |
|
|
if ( jQuery.isWindow( elem ) ) { |
|
|
if ( isWindow( elem ) ) { |
|
|
win = elem; |
|
|
} else if ( elem.nodeType === 9 ) { |
|
|
win = elem.defaultView; |
|
|
|
|
@@ -0,0 +1,8 @@ |
|
|
define( function() { |
|
|
"use strict"; |
|
|
|
|
|
return function isWindow( obj ) { |
|
|
return obj != null && obj === obj.window; |
|
|
}; |
|
|
|
|
|
} ); |
|
@@ -76,7 +76,7 @@ QUnit.test( "show/hide", function( assert ) { |
|
|
} |
|
|
|
|
|
QUnit.test( "core", function( assert ) { |
|
|
assert.expect( 27 ); |
|
|
assert.expect( 25 ); |
|
|
|
|
|
var elem = jQuery( "<div></div><span></span>" ); |
|
|
|
|
@@ -100,9 +100,6 @@ QUnit.test( "core", function( assert ) { |
|
|
"<?xml version='1.0' encoding='UTF-8'?><foo bar='baz'></foo>" |
|
|
) ), "jQuery.isXMLDoc" ); |
|
|
|
|
|
assert.ok( jQuery.isWindow( window ), "jQuery.isWindow(window)" ); |
|
|
assert.ok( !jQuery.isWindow( 2 ), "jQuery.isWindow(Number)" ); |
|
|
|
|
|
assert.strictEqual( jQuery.inArray( 3, [ "a", 6, false, 3, {} ] ), 3, "jQuery.inArray - true" ); |
|
|
assert.strictEqual( |
|
|
jQuery.inArray( 3, [ "a", 6, false, "3", {} ] ), |
|
|
|
@@ -680,25 +680,6 @@ QUnit.test( "isXMLDoc - XML", function( assert ) { |
|
|
assert.ok( jQuery.isXMLDoc( jQuery( "tab", xml )[ 0 ] ), "XML Tab Element" ); |
|
|
} ); |
|
|
|
|
|
QUnit.test( "isWindow", function( assert ) { |
|
|
assert.expect( 14 ); |
|
|
|
|
|
assert.ok( jQuery.isWindow( window ), "window" ); |
|
|
assert.ok( jQuery.isWindow( document.getElementsByTagName( "iframe" )[ 0 ].contentWindow ), "iframe.contentWindow" ); |
|
|
assert.ok( !jQuery.isWindow(), "empty" ); |
|
|
assert.ok( !jQuery.isWindow( null ), "null" ); |
|
|
assert.ok( !jQuery.isWindow( undefined ), "undefined" ); |
|
|
assert.ok( !jQuery.isWindow( document ), "document" ); |
|
|
assert.ok( !jQuery.isWindow( document.documentElement ), "documentElement" ); |
|
|
assert.ok( !jQuery.isWindow( "" ), "string" ); |
|
|
assert.ok( !jQuery.isWindow( 1 ), "number" ); |
|
|
assert.ok( !jQuery.isWindow( true ), "boolean" ); |
|
|
assert.ok( !jQuery.isWindow( {} ), "object" ); |
|
|
assert.ok( !jQuery.isWindow( { setInterval: function() {} } ), "fake window" ); |
|
|
assert.ok( !jQuery.isWindow( /window/ ), "regexp" ); |
|
|
assert.ok( !jQuery.isWindow( function() {} ), "function" ); |
|
|
} ); |
|
|
|
|
|
QUnit.test( "jQuery('html')", function( assert ) { |
|
|
assert.expect( 18 ); |
|
|
|
|
|
|
@@ -164,3 +164,22 @@ QUnit.test( "jQuery.nodeName", function( assert ) { |
|
|
"Works on custom elements (true)" |
|
|
); |
|
|
} ); |
|
|
|
|
|
QUnit.test( "jQuery.isWindow", function( assert ) { |
|
|
assert.expect( 14 ); |
|
|
|
|
|
assert.ok( jQuery.isWindow( window ), "window" ); |
|
|
assert.ok( jQuery.isWindow( document.getElementsByTagName( "iframe" )[ 0 ].contentWindow ), "iframe.contentWindow" ); |
|
|
assert.ok( !jQuery.isWindow(), "empty" ); |
|
|
assert.ok( !jQuery.isWindow( null ), "null" ); |
|
|
assert.ok( !jQuery.isWindow( undefined ), "undefined" ); |
|
|
assert.ok( !jQuery.isWindow( document ), "document" ); |
|
|
assert.ok( !jQuery.isWindow( document.documentElement ), "documentElement" ); |
|
|
assert.ok( !jQuery.isWindow( "" ), "string" ); |
|
|
assert.ok( !jQuery.isWindow( 1 ), "number" ); |
|
|
assert.ok( !jQuery.isWindow( true ), "boolean" ); |
|
|
assert.ok( !jQuery.isWindow( {} ), "object" ); |
|
|
assert.ok( !jQuery.isWindow( { setInterval: function() {} } ), "fake window" ); |
|
|
assert.ok( !jQuery.isWindow( /window/ ), "regexp" ); |
|
|
assert.ok( !jQuery.isWindow( function() {} ), "function" ); |
|
|
} ); |