jQuery.trimってのは、String.trimみたいな文字の前後の空白を除去してくれるjQueryのユーティリティ関数です。

IE6にはString.trimがないので代わりに使えますね。

でもね。ブラウザによって全角スペースを処理するかどうかの動作が異なるので注意ですよ。

jQueryの実装を見てみると、該当の置換処理をしている正規表現は以下のように定義されてました。

rtrim = /^(\s|\u00A0)+|(\s|\u00A0)+$/g,
trim: function( text ) {
		return (text || "").replace( rtrim, "" );
	},

この \s ってのの扱いがブラウザによって異なるのでこういう問題が発生してるのですね。

なので全角も処理したいなら自分で定義しましょう。

以下はString.trimを再定義するスクリプト。

	String.prototype.trim = function() {
		return this.replace( /^[  \t\r\n]+|[  \t\r\n]+$/, "" );
	};

こうすればブラウザ間の問題は発生しないですね。めでたしめでたし。

参考