From: Michał Gołębiowski Date: Thu, 13 Feb 2014 22:48:58 +0000 (-0800) Subject: Core: Fix trim in Android<4.1 X-Git-Tag: 2.1.1-beta1~50 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=eda283d0e4d59074ae98af0fdc2951e6c109d5fd;p=jquery.git Core: Fix trim in Android<4.1 --- diff --git a/src/core.js b/src/core.js index 67b6e7199..11c232765 100644 --- a/src/core.js +++ b/src/core.js @@ -24,6 +24,10 @@ var return new jQuery.fn.init( selector, context ); }, + // Support: Android<4.1 + // Make sure we trim BOM and NBSP + rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, + // Matches dashed string for camelizing rmsPrefix = /^-ms-/, rdashAlpha = /-([\da-z])/gi, @@ -336,9 +340,21 @@ jQuery.extend({ return obj; }, - trim: function( text ) { - return text == null ? "" : trim.call( text ); - }, + // Support: Android<4.1 + // Use native String.trim function wherever possible + trim: trim && !trim.call("\uFEFF\xA0") ? + function( text ) { + return text == null ? + "" : + trim.call( text ); + } : + + // Otherwise use our own trimming functionality + function( text ) { + return text == null ? + "" : + ( text + "" ).replace( rtrim, "" ); + }, // results is for internal usage only makeArray: function( arr, results ) {