[英]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.