Выберите проблему события щелчка в IE7 (Jquery) - PullRequest
0 голосов
/ 19 августа 2011

Поскольку IE 7 не поддерживает атрибут disabled, я использую jQuery для добавления обработчика событий к событию change, который проверяет, есть ли атрибут disabled для выбора и установки css color grey на отключенной опции.

Однако, как только я нажимаю на раскрывающийся список, он сначала закрывает мой раскрывающийся список, а затем заново рисует новый с серым цветом.

Вот мой код:

(function($) {

    $('select').change(function() {
        if (this.options[this.selectedIndex].disabled) {
            if (this.options.length == 0) {
                this.selectedIndex = -1;
            } else {
                this.selectedIndex--;
            }
            //$(this).trigger('change');
        }
    });
    $('select').each(function(it) {
        if (this.options[this.selectedIndex].disabled) {
            this.onchange();
        }
    });

    $('select').click(function(e) {
        //e.stopPropagation();
        $(this).find('option[disabled]').css({
            'color': '#cccccc'
        });
    });

})(jQuery);

1 Ответ

0 голосов
/ 19 августа 2011

Посмотрите на этот пример, который я сделал для вас: http://jsfiddle.net/auNVE/

Он должен дать вам достаточно информации для дальнейшего развития!

Удачи!


Редактировать Обновить после получения дополнительной информацииhttp://jsfiddle.net/auNVE/1/


Редактировать Теперь с mousedown вместо clickhttp://jsfiddle.net/auNVE/2/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...