【发布时间】:2012-04-07 12:52:10
【问题描述】:
这个 js 库在 IE9、FF、Safari 等中运行良好,但在 IE8 中不行。单击拇指时,页面上没有任何反应。
有人知道为什么吗?
我的页面位于here
HTML(精简版):
<div id="strandScroll">
<ul>
<li><a href="images/IMG_8720_.jpg" class="thumbnailStrand"><img src="images/IMG_8720_small.jpg"
alt="Image 1" border="0"/></a></li>
<li><a href="images/IMG_9112.jpg" class="thumbnailStrand"><img src="images/IMG_9112_small.jpg"
alt="Thumbnail 2" border="0"/></a></li>
</ul>
</div>
<div id="claspScroll">
<ul>
<li><a href="images/IMG_8626.png" class="thumbnailClasp"><img src="images/IMG_8626.png"
alt="Image 1" border="0"/></a> </li>
<li><a href="images/IMG_8577.png" class="thumbnailClasp"><img src="images/IMG_8577.png"
alt="Thumbnail 2" border="0"/></a></li>
</ul>
<div>
<div id="combinedStrand">
<img src="images/IMG_8720_.jpg" max-width 100% alt="Main Image" id="mainImageStrand" class="combinedStrandImage"/>
</div>
<div id="combinedClasp">
<img src="images/IMG_8577.png" alt="Main ImageClasp" id="mainImageClasp" class="combinedClasp"/>
</div>
js:
$(function() {
$('.thumbnailStrand').live('click', function() {
$('#mainImageStrand').hide();
$('#imageWrap').css('background-image', 'url(ajax-loader.gif)');
$('<img />').attr('src', this.href).load(function() {
$('#imageWrap').css('background-image', 'none');
$('#mainImageStrand').attr('src', $(this).attr('src')).fadeIn();
});
return false;
});
$('.thumbnailClasp').live('click', function() {
$('#mainImageClasp').hide();
$('#imageWrapClasp').css('background-image', 'url(ajax-loader.gif)');
$('<img />').attr('src',this.href).load(function() {
$('#imageWrapClasp').css('background-image', 'none');
$('#mainImageClasp').attr('src', $(this).attr('src')).fadeIn();
});
return false;
$(".thumbnail").click(function() {
$("#mainImage").attr("src", $(this).attr("src"));
});
});
});
提前谢谢...
【问题讨论】:
-
从 jQuery 1.7 开始,不推荐使用 .live() 方法。使用 .on() 附加事件处理程序。 api.jquery.com/live 当您加载 jQuery 1.7.1 时,这可能是问题所在。尝试将您的 .live() 更改为 .on()
-
不,恐怕这并没有解决我的问题。但我会听取您的建议并将其更改为 .on()。干杯...
标签: javascript gallery thumbnails