0

次の目的でスクリプトを使用しています。

  1. チェックボックス置換要素のクラスを切り替えます
  2. チェックボックス自体の状態を変更する
  3. チェックボックス自体の状態に基づいて、チェックボックスの置換の状態を初期化します

すべてのブラウザー (IE9 を含む) で問題なく動作しますが、IE7 と IE8 では失敗します。IE7 - 8 では、要素をクリックしても効果がありません。クラスを追加したり、チェックボックスの状態を変更したりしません。

/** BEGIN CheckBox **/
$.fn.xCheckBoxList = function () {
    this.Check = function (clientId, isSingleSelection) {
        $(document).ready(function () {
            var checkBox = $("#" + clientId + " .x_checkBox");
            $(checkBox).has("input:checked").addClass("x_checkBoxChecked");
            $(checkBox).click(function () {
                if (isSingleSelection) {
                    $(this).siblings().find("input").attr("checked", false);
                }
                $(checkBox).has("input:checked").addClass("x_checkBoxChecked");
                $(checkBox).has("input:not(:checked)").removeClass("x_checkBoxChecked");
            });
        });
    }

    return this;
}
/** END CheckBox **/

何か案は?

4

1 に答える 1

1

同じ問題があります。単にaddClassや他のMootools1.2メソッドはIE8では機能しないようです。IE8でこれを機能させるには、いくつかの代替実装を提供する必要があります。より良い解決策を見つけた場合はお知らせください

于 2011-10-30T09:43:24.980 に答える