1

jquery-uiタブオブジェクトで奇妙な問題が発生しています。タブ上にあるhtml入力タグ(type = "text")のテキストを強調表示し、タブを切り替えてから元のタブに戻ると、このテキストは引き続き強調表示されます。タブを切り替える前に実際に強調表示を削除することができ、戻ったときにテキストが再び強調表示されています。タブのshowイベントがトリガーされた後、テキストボックスで.blur()を呼び出してこの強調表示を削除しようとしましたが、これは機能しません。同様に、実際にページの他の部分(blur()と同等であると見なします)をクリックしても、テキストの強調表示は削除されません。ここで他に何かできることはありますか?

ありがとう。

4

1 に答える 1

1

入力 DOM オブジェクトの selectionStart プロパティを変更することで、当面の問題を解決しました。これを selectionEnd プロパティと等しく設定することで、テキストが強調表示されないようにします。selectionStart プロパティが元の強調表示で変更されていたため、タブに戻ったときにテキストが再強調表示されました。以下の解決策。

$(this).find('input').each(function () {
    var input = document.getElementById($(this).attr("id"));
    try {
        input.selectionStart = input.selectionEnd;
    }
        catch (err) {
    }
});
于 2011-07-20T22:13:17.143 に答える