Internet Explorer 8 и JQuery: нажмите () для элемента с прозрачным фоном - PullRequest
3 голосов
/ 24 января 2012

В IE8 у меня есть 100% ширина + высота фиксированной позиции div, #photo-upload, с прозрачным фоном, который перекрывает всю страницу. У меня есть функция click () для этого div, но в IE8 щелчок не срабатывает. Установка сплошного цвета фона решает проблему.

Кто-нибудь имеет опыт работы с этой ошибкой или есть обходной путь?

        $('#photo-upload').click(function(){
            $('#photo-upload').removeClass('show');
        });

Ответы [ 5 ]

5 голосов
/ 24 января 2012

Добавьте цветной фон и установите filter: alpha(opacity=0); opacity: 0;

Мне было бы интересно, если кто-нибудь напишет точно, почему это происходит, но это обходной путь, который я нашел для работы.

Вот демоверсия: http://jsfiddle.net/uMyXC/

2 голосов
/ 11 декабря 2013

Думаю, я бы добавил ответ из комментария j-man86 о принятом ответе на случай, если кто-то сначала пропустит его, как я.

Используйте прозрачный, повторяющийся квадратный png размером 1 пиксель (или gif, какпока он полностью прозрачен) как фоновое изображение наложенного div.

Отличное открытие!Спасибо, j-man86!

0 голосов
/ 19 ноября 2015

Просто установите цвет фона с нулевой непрозрачностью:

#photo-upload { background-color: rgba(255,255,255,0); }

Это работает на IE9.

0 голосов
/ 29 июля 2014

Это короткий и приятный способ решения этой проблемы:

element{
    background:rgba(255,255,255,0.01);
}

и Готово.:)

0 голосов
/ 28 октября 2013

Я только что протестировал это на IE10, но, кажется, есть более простое решение с альфа, но без фильтров.Кажется, что просто установка цвета с явным альфа-компонентом, равным нулю:

backgroundColor: rgba(0,0,0,0);
...