2010年3月10日
jQuery1.3.2のバグ?IEで を$.trimするとき変な結果に
jQuery 1.4.2ではこれは治ったようです。
jQuery最新版をお使いの方は下記のようなバグはもう発生しません。
サンプル
※jQuery 1.3.2で発生する問題※
HTML
<select>
<option id="foo"> </option>
<option>11</option>
<option>22</option>
</select>
<tr id="bar"> </tr>
Javascript
var optionText = $("#foo").text();
// firefoxは0、IEは1
alert("select optionタグの をtrimした後のlength: " + $.trim(optionText).length);
var trText = $("#bar").text();
// firefoxは0、IEも0!
alert("trタグの をtrimした後のlength: " + $.trim(trText).length);
結果
selectのoptionタグのテキストにある" "に
$.trimをかけて見ると
Firefoxはちゃんとtrimしてlengthが0になったが、
IEはtrimできずlengthが1のままです。
しかしtrタグのテキストにある" "をtrimすると
IEも正しくtrimしてlengthが0になるんです。。。