首页 文章

Internet Explorer中的JQuery脚本问题

提问于
浏览
0

我创建了一个适用于所有浏览器的脚本,除了SOME Internet Explorer之外 . 我似乎无法弄清楚为什么一些Internet Explorer的工作,而其他人没有 . 在办公室,4个Internet Explorer 8的@版本8.0.6001.18702完美地工作,而另外4个Internet Explorer的8个版本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

    尝试使用文档ready函数或它的简写版本,而不是窗口加载事件来包装您的代码 .

    $(function() {
        ...
     });
    
  • 0

    您是否检查过所有相同的浏览器是否以相同的兼容模式运行?使用开发人员工具,可以将浏览器配置为使用不同的渲染引擎 . 选项是......

    • IE7

    • IE8

    • IE8兼容性视图 .

  • 0

    新代码(附提示)

    $(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);
    
    });
    });
    

相关问题