jQuery 画像回転子に問題があります。次/前のボタンをすばやく 2 回クリックすると、画像がちらつき、両方の画像が表示されます。それを修正する方法についてのアイデアはありますか?
ここにHTMLがあります
<div id="prev">
<img id="prevListing" class="prevListing" src="..." onmouseover="this.src='...'" onmouseout="this.src='...'">
</div>
<div class="faded">
<div id="fader">
<img src="...">
<img src="...">
</div>
</div>
<div id="next">
<img id="nextListing" class="nextListing" src="..." onmouseover="this.src='...'" onmouseout="this.src='...'">
</div>
CSS
.used {float:left; width:50%;}
.usedListingImage {width:65%;float:left; display:block; margin:-1% auto 0 auto; max-width:400px;}
#fader{display:block; width:95%;}
.nextListing {width:5%;float:right; margin:6% 5% 5% 5%;padding-right:5%;}
.prevListing {width:5%;float:left; margin:7% 5% 5% 5%; }
そしてjQuery
<script type="text/javascript">
jQuery (function() {
$('#fader img:not(:first)').hide();
$('#fader img').each(function() {
var img = $(this);
$('<img>').attr('src', $(this).attr('src')).load(function() {
img.css('margin-left', -'0');
});
});
var pause = false;
function fadeNext() {
$('#fader img').first().fadeOut().appendTo($('#fader'));
$('#fader img').first().fadeIn();
}
function fadePrev() {
$('#fader img').first().fadeOut();
$('#fader img').last().prependTo($('#fader')).fadeIn();
}
$('#fader, #next').click(function() {
fadeNext();
});
$('#prev').click(function() {
fadePrev();
});
$('#fader, .button').hover(function() {
pause = true;
},function() {
pause = false;
});
function doRotate() {
if(!pause) {
fadeNext();
}
}
var rotate = setInterval(doRotate, 5000);
});
</script>
画像が切り替わったときにちらつきを止める方法はありますか?