0

www.creat3dprinters.com のrotatorクラス div を回転する画像ギャラリーがあり、一時停止してmouseenterから 1 秒後に再び起動しmouseleaveます。

ただし、ユーザーがマウスを rotator クラス div の内外にすばやく移動すると、関数呼び出しがスタックアップし、「スタック」が完了するまで表示が変化します。

2回目以降は未完の1秒遅れを解消して、mouseenterこうならないようにしたい。

clearTimeout関数内で使用してみましmouseenterたが、うまくいかないようです。

関数もあることは知っていstop()ますが、それも機能しませんでした。

どんな提案でも大歓迎です。

jQuery(document).ready(function () {
    var initList = setInterval('RotateIt()', 4000);

    $('.rotator').mouseenter(function () {
        clearInterval(initList);
    }).mouseleave(function () {
        timeout = setTimeout(function () {
            RotateIt()
        }, 1000);
        initList = setInterval('RotateIt()', 4000);
    })
});



function RotateIt() {
    clearTimeout(timeout);

    if ($('#rotator-visible').next('.rotator').length == 0) {
        $('.rotator:first').attr('id', 'rotator-visible');
        $('.rotator:last').removeAttr("id");

    } else {
        $('#rotator-visible').removeAttr("id").next('.rotator').attr("id", "rotator-visible");
    }
}
4

1 に答える 1