Проблема сценария JQuery в Internet Explorer - PullRequest
0 голосов
/ 29 ноября 2010

Я сделал скрипт, который работает во всех браузерах, кроме НЕКОТОРЫХ Internet Explorer.Я не могу понять, почему некоторые Internet Explorer работают, а другие нет.В офисе 4 Internet Explorer 8 @ version 8.0.6001.18702 работают отлично, а 4 других Internet Explorer 8 @ version 8.0.6001.18702 (то есть полностью те же браузеры) не работают.У всех нас есть Windows XP и все последние обновления.

Пожалуйста, посетите http://www.stardekk.be/voorontwerp/verco/ с Firefox, Safari, Chrome, ..., а затем с Internet Explorer (7, 8, не имеет значения).

Проблема заключается вверхняя часть сайта.Большие пальцы должны иметь накладку и при наведении;оверлей должен исчезнуть и всплывающая подсказка.

Я надеюсь, что кто-то может помочь мне, так как 50% работы Internet Explorer, а 50% - нет.

Спасибо

<script type="text/javascript" language="javascript">
$(window).load(function() {
$("#gallery div img").after('<div class="overlay"></div>');
$(".overlay").css("position", "absolute");
$(".overlay").css("z-index", "30");
$(".overlay").css("background", "url('images/overlay.png')");
$(".overlay").css("top", "0");
$(".overlay").css("left", "0");
$(".overlay").css("width", "241px");
$(".overlay").css("height", "146px");

var userAgent = navigator.userAgent.toLowerCase();

if ($.browser.msie) {
    $('.overlay').hover(function() {
        $(this).stop().fadeTo("fast", 0, function() { $(this).css("background", "transparent") });
    },
    function() {
        $(this).stop().css("background", "url('images/overlay.png')").fadeTo("fast", 0.8);

    });
} else { 
    $('.overlay').hover(function() {
        $(this).stop().fadeTo("fast", 0, function() { $(this).css("background", "transparent") });
    },
    function() {
        $(this).stop().css("background", "url('images/overlay.png')").fadeTo("fast", 1);
    });
}
});

Ответы [ 3 ]

2 голосов
/ 29 ноября 2010

Попробуйте использовать функцию документа ready или сокращенную версию вместо события загрузки окна для переноса кода.

0 голосов
/ 29 ноября 2010

Новый код (с подсказками)

$(window).load(function() {
$("#gallery div img").after('<div class="overlay"></div>');
$(".overlay").css({"position":"absolute", "z-index": "30", "background": "url('images/overlay.png')", "top": "0", "left": "0", "width": "241px", "height": "146px"});

var trans = $.browser.msie ? 0.8 : 1;

$('.overlay').hover(function() {
    $(this).stop().fadeTo("fast", 0, function() { $(this).css("background", "transparent") });
},
function() {
    $(this).stop().css("background", "url('images/overlay.png')").fadeTo("fast", trans);

});
});

0 голосов
/ 29 ноября 2010

Вы проверили, что все идентичные браузеры работают в одном и том же режиме совместимости?Используя Инструменты разработчика, браузер может быть настроен на использование различных механизмов рендеринга.Доступны следующие варианты: *

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