簡體   English   中英

JavaScript 添加 class 點擊在 IE9 中有效,在 IE7-8 中無效

[英]JavaScript add class on click works in IE9, doesn't work in IE7-8

我正在使用腳本來:

  1. 切換我的復選框替換元素的 class
  2. 更改復選框本身的 state
  3. 根據復選框本身的 state 初始化復選框替換的 state

它在每個瀏覽器(包括 IE9)中都可以正常工作,但在 IE7 和 IE8 中失敗。 在 IE7 - 8 中單擊元素無效。 它既不添加 class 也不更改復選框 state。

/** 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 **/

有任何想法嗎?

我有同樣的問題。 似乎簡單的 addClass 和其他 Mootools 1.2 方法在 IE8 中不起作用。 應該提供一些替代實現來使這項工作在 IE8 中工作。 如果您找到了更好的解決方案,請告訴我們

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM