rnotwhite = /\S/,
// Used for trimming whitespace
- rtrim = /(\s|\u00A0)+|(\s|\u00A0)+$/g,
+ rtrim = /^(\s|\u00A0)+|(\s|\u00A0)+$/g,
// Match a standalone tag
rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
return true;
},
- // check if an element is in a (or is an) XML document
- isXMLDoc: function( elem ) {
- // documentElement is verified for cases where it doesn't yet exist
- // (such as loading iframes in IE - #4833)
- var documentElement = (elem ? elem.ownerDocument || elem : 0).documentElement;
- return documentElement ? documentElement.nodeName !== "HTML" : false;
- },
-
// Evalulates a script in a global context
globalEval: function( data ) {
if ( data && rnotwhite.test(data) ) {
if ( array != null ) {
// The window, strings (and functions) also have 'length'
- if ( array.length == null || typeof array === "string" || jQuery.isFunction(array) || array.setInterval ) {
+ // The extra typeof function check is to prevent crashes
+ // in Safari 2 (See: #3039)
+ if ( array.length == null || typeof array === "string" || jQuery.isFunction(array) || (typeof array !== "function" && array.setInterval) ) {
push.call( ret, array );
} else {
jQuery.merge( ret, array );