/ / .hover()onmouseout違反(){} - jquery、css、forループ、onmouseout

.hover()onmouseout breake for(){} - jquery、css、for-loop、onmouseout

$("#drugiGumb").hover(
function () {
for (var i = 0; i < 60; i++) {
$("#drugiGumbSlika").delay(15).animate({ marginLeft: "-=149px" }, 1);
}
$("#drugiGumbSlika").animate({ marginLeft: "-8791px" }, 1);
}, function () {
$("#drugiGumbSlika").stop().animate({ marginLeft: "0px" }, 1);
}
);

こんにちは、みんな、 私は8791px幅の画像を持っています1つの画像でアニメーション。 1フレームは149×85ピクセルです。それをアニメートするには、上記のコードを作成します。私の問題は、マウスアウトのループを止めてアニメーションが停止しないことです。どのように私はこれを達成することができますか?

あらかじめThx。

回答:

回答№1は0

jQuery .stop() ドキュメント - http://api.jquery.com/stop/

$("#drugiGumb").hover(
function () {
for (var i = 0; i < 60; i++) {
$("#drugiGumbSlika").delay(15).animate({ marginLeft: "-=149px" }, 1);
}
$("#drugiGumbSlika").animate({ marginLeft: "-8791px" }, 1);
}, function () {
$("#drugiGumbSlika").stop(true, true).animate({ marginLeft: "0px" }, 1);
}
);

回答№2の場合は1

試す .stop(true,true)

$("#drugiGumb").hover(function () {
for (var i = 0; i < 60; i++) {
$("#drugiGumbSlika").delay(15).animate({
marginLeft: "-=149px"
}, 1);
}
$("#drugiGumbSlika").animate({
marginLeft: "-8791px"
}, 1);
}, function () {
$("#drugiGumbSlika").stop(true,true).animate({
marginLeft: "0px"
}, 1);
});

回答№3の場合は0

イベントmouseenterとmouseleaveを処理する必要があります。ホバーしません。