#jquery #html #css
#jquery #HTML #css
Вопрос:
Я поместил div .ontopdivs
поверх другого div .notradewin
с помощью jQuery, чтобы он выглядел так, как будто он отключен, он отлично работает со всеми браузерами, кроме IE7.
В IE7 все в нижнем div по-прежнему работает: наведите курсор на изображение, выберите открыть по щелчку мыши, текст, который я могу пометить.
(Это не форма, и использовать disabled="disabled"
ее не является ответом. попробовал)
Select — это плагин, который я написал, поэтому, я думаю, я могу исправить это в плагине, но все ссылки все еще работают.
Код jQuery:
$("div.notradewin").each(function() {
var thisoffset = $(this).offset();
var thiswidth = $(this).width() 4;
var thisheight = $(this).height() 4;
$("#bodywrap").append('<div class="ontopdivs" style="background-color: transparent; width: ' thiswidth 'px; height:' thisheight 'px;position: absolute;top:' thisoffset.top 'px;left: ' thisoffset.left 'px;z-index: 12 !important;overflow: hidden;"></div>')
})
Как мне заставить это работать?
Ответ №1:
В IE существует известная проблема с событиями мыши на прозрачном фоне. Смотрите Этот пост, объясняющий проблему.
Попробуйте добавить background-image: url(.)
, если у вас должен быть прозрачный фон.
Ответ №2:
Попробуйте использовать блочный пользовательский интерфейс, он может блокировать определенные элементы. http://jquery.malsup.com/block/#element
Комментарии:
1. я не знал, что Block UI может делать это для определенных элементов. Спасибо
Ответ №3:
В IE7 полностью прозрачные элементы не получают события щелчка (или наведения курсора, по-видимому). Попробуйте поместить следующее в таблицу стилей для IE7 и старше (ссылка здесь):
filter: alpha(opacity=1);
Это установит непрозрачность на 1%, которая будет казаться прозрачной, но все равно должна позволять перехватывать события щелчка.
Комментарии:
1. Я хочу, чтобы верхний div блокировал все клики или наведение курсора мыши, которые происходят в нижнем div. таким образом, нижний div будет отключен.
2. Верно, и тот факт, что верхний div прозрачен, приводит к тому, что щелчки и наведения не блокируются в IE7.