* @cat DOM/Attributes
*/
text: function(e) {
- if ( typeof e == "string" )
+ if ( typeof e != "object" && e != null )
return this.empty().append( document.createTextNode( e ) );
var t = "";
/**
* Searches for all elements that match the specified expression.
-
+ *
* This method is a good way to find additional descendant
* elements with which to process.
*
* @cat JavaScript
*/
trim: function(t){
- return t.replace(/^\s+|\s+$/g, "");
+ return (t||"").replace(/^\s+|\s+$/g, "");
},
makeArray: function( a ) {
unique: function(first) {
var r = [], num = jQuery.mergeNum++;
- for ( var i = 0, fl = first.length; i < fl; i++ )
- if ( num != first[i].mergeNum ) {
- first[i].mergeNum = num;
- r.push(first[i]);
- }
+ try {
+ for ( var i = 0, fl = first.length; i < fl; i++ )
+ if ( num != first[i].mergeNum ) {
+ first[i].mergeNum = num;
+ r.push(first[i]);
+ }
+ } catch(e) {
+ r = first;
+ }
return r;
},
// Figure out what browser is being used
jQuery.browser = {
- version: b.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)[1],
+ version: (b.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1],
safari: /webkit/.test(b),
opera: /opera/.test(b),
msie: /msie/.test(b) && !/opera/.test(b),