私はjQueryスライドショープラグインに取り組んでいます。私の方法の 1 つは、写真を前後に切り替えることです。私はそれを作成することにかなり成功しています。これは、特定のメソッドのこれまでのコードの孤立したケースです。
var images = $("#simpleslides").children("img");
$(".slideButtons ul li").on("click", "a", function() {
var anchorIndex = $(this).parent().index();
var $activeSlide = $("#simpleslides img:visible");
var $targetSlide = $(images[anchorIndex]);
if($activeSlide.attr("src") == $targetSlide.attr("src") || $targetSlide.is(":animated")) {
return false;
} else {
$activeSlide.css({ "z-index" : 0 });
$targetSlide.css({ "z-index" : 1 });
$targetSlide.stop().fadeIn("slow", function() {
$activeSlide.hide();
});
}
});
動作中の動作を確認するためのフィドルを次に示します: http://jsfiddle.net/ase3E/
ほとんどの場合、これは期待どおりに機能します。ユーザーが対応する番号をクリックすると、画像がフェード インします。
ただし、すばやくクリックすると、ときどき飛び跳ねてhide
、スライドが完全に表示されてしまうことがあります。フィドルをいじってみると、私が言及しているものがわかります。各画像をクリックして見てください。
stop
問題を解決できると思ったものを採用しましたが、採用していません。hide
コールバックの後にメソッドを配置しましたfadeIn
が、それでも状況は改善されませんでした。
ここで何が間違っていますか??