jQuery无法在IE8及更高版本中运行

时间:2015-01-08 13:47:38

标签: jquery html asp.net

使用jQuery 1.9.1

div就像一个图像的容器。它有一个css风格的关闭图标。 当用户点击关闭图标时,它会删除div中的图像,并隐藏关闭图标。

这两个JS功能在chrome& amp;火狐但不是在IE8& IE11。 在这里可以做些什么。

HTML:

<div>
 <a class="closeCompare" rel="237" style="display:block"></a>
 <img class="imgCompare" src="pics/1.png" style="display:block"></img>
</div>

JS:

$(document).ready(function(){
RemoveDefaultImage(); //hide the ugly X icon that shows up when there is no image
ShowHideRemoveIcon(); //hide the close icon
})

function RemoveDefaultImage() {       
    $(".imgCompare").each(function () {
        if (($(this).attr('src').length) == 0) {
            $(this).css("display", "none");
        }
        else {
            $(this).css("display", "block");
        }
    })
}

function ShowHideRemoveIcon() {        
    $(".closeCompare").each(function () {
        if ($(this).attr('rel') == 0) {
            $(this).css("display", "none");
        }
        else {
            $(this).css("display", "block");
        }
    })
}

这些功能会在页面加载和点击事件

上触发

2 个答案:

答案 0 :(得分:1)

这可能可以解决问题,但如果不是,你应该这样做。变化:

$(document).ready

$(window).load

$(文件)。已经没有等待图片加载:What is the difference between $(window).load and $(document).ready?

答案 1 :(得分:1)

我认为第一次加载页面时不会触发$(document).ready(function (){ });。因此,当您在同一页面上使用多个js库时,会出现问题。所以你只能使用这段代码。

<强>代码:

jQuery.noConflict();
$(document).ready(function (){ });