繁体   English   中英

jQuery可以在除IE之外的所有浏览器中使用

[英]Jquery works in every browser other than IE

对于IE而言,此代码有效,我做了仅IE可以读取的IE注释。

<!--[if gt IE 6]>
<script type="text/javascript" 
        src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
{

    //--my code
    $(document).ready(function() 
    {
        $('.thumbnail').live("click", function() 
        {
            $('#mainImage').hide();
            $('#imageWrap').css('background-image', "url('ajax-loader.gif')");
            var i = $('<img />').attr('src',this.href).load(function() 
            {
                $('#mainImage').attr('src', i.attr('src'));
                $('#imageWrap').css('background-image', 'none');
                $('#mainImage').fadeIn();
            });
            return false; 
        });
    });
};


</script> <![endif]-->

对于其他所有浏览器,此代码都有效...

<script type="text/javascript">
$(document).ready(function() {
    $('.thumbnail').live("click", function() {
        $('#mainImage').hide();
        $('#imageWrap').css('background-image', "url('ajax-loader.gif')");
        var i = $('<img />').attr('src',this.href).load(function() {
            $('#mainImage').attr('src', i.attr('src'));
            $('#imageWrap').css('background-image', 'none');
            $('#mainImage').fadeIn();
        });
        return false; 
    });
});


</script>

我得到了有效的代码,尽管它们每个都做一些不同的事情,但是它们执行了我需要他们做的事情。 唯一的问题是IE不想阅读代码来完成我需要做的事情...我缺少了什么? 提前致谢!

IE6版本中的右括号过多,请参见此处:

});
}; <- delete me

删除}; 你应该很好:)

编辑:您也有一个无赖{开头,也摆脱它,它在这里:

{ <- delete that!

//--my code
$(document).ready(function() 
{

您的document.ready()外部的左括号和右括号是代码的一部分吗?

删除第一个

{

还有最后一个

};

您无需将所有内容都用大括号括起来。

交换这两个:

$('<img />').attr('src',this.href).load(function()

应该

$('<img />').load(function(){...}).attr('src',this.href)...

这样,一旦图像被缓存,它就可以在IE6-IE8中工作。

引用此答案: 检查动态加载的图像是否完整

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM