0

画像を連続的に左に移動する JavaScript があります。画像にマウスオーバーすると、スクロールが停止し、マウスが置かれている領域タグの上にカスタム テキストを含むわずかに透明な div が表示されるようにします。

これが私が使用しているJSで、どこで起こるべきかをコメントアウトしました。どうすればいいですか?

$(document).ready(function() {
                var date = new Date();
                var style = "day"
                if (date.getHours() >= 17 && date.getHours() <=5) {
                    style="night";
                }
                setInterval(wells_fancy_slider, 50);
                $('area').hover(function() {
                                    // here is where the code should go
                    paused = true;
                }, function() {
                                    // here is where you hide the div
                    paused = false;
                })
            })

            function wells_fancy_slider() {
                if (!paused) {
                    if (parseInt($('#pic1').css('left')) < -2770) {
                        $('#pic1').css('left', '5586');
                    }
                    if (parseInt($('#pic2').css('left')) < -2770) {
                        $('#pic2').css('left', '5586');
                    }
                    if (parseInt($('#pic3').css('left')) < -2770) {
                        $('#pic3').css('left', '5586');
                    }
                    $('#pic1, #pic2, #pic3').css('left', '-=5');
                }
            }
4

2 に答える 2

3

それがあなたのニーズに合っているかどうかわからない:

CSS:

#mydiv{position:absolute;display:none}

    $('area').hover(function() {                

   $('mydiv').offset({ top: $(this).offset().top, left: $(this).offset().left}).fadeIn();
                paused = true;
            }, function() {
                   $('#mydiv').hide();
                paused = false;
            })
于 2012-11-22T14:10:58.197 に答える
3

これを試してみてください..

t = setInterval(wells_fancy_slider, 50);

$('#area').hover(function(e) {
    clearInterval(t);
    var parentOffset = $(this).offset(); // or $(this).parent().offset();
    var x = e.pageX - parentOffset.left;
    var y = e.pageY - parentOffset.top;

    paused = true;
}, function() {
    clearInterval(t);
    t = setInterval(wells_fancy_slider, 50);
    paused = false;
});
于 2012-11-22T14:32:55.600 に答える