0

ギャラリーを水平にスクロールしようとしていますが、ボタンを離すと停止します。私が考えていた別のオプションは、一度に 1 つの写真だけがコンテナーに収まるようにギャラリーを小さくし、次の写真に移動するためのボタンを追加することです。今のところ、これを機能させるにはどうすればよいですか?サイトはこちらです。

    //Scrolling 
var amount = '';

function scroll() {
    $('#photosContainer').animate({
        scrollLeft: amount
    }, 100, 'linear',function() {
        if (amount != '') {
            scroll();
        }
    });
}
$('#scrollDown').mousedown(function() {
    amount = '+=10';
    scroll();
});
$('#scrollDown').mouseup(function(){
    $(this).stop(true);
});
$('#scrollUp').mousedown(function() {
    amount = '-=10';
    scroll();
});
$('#scrollUp').mouseup(function(){
    $(this).stop(true);
});
4

1 に答える 1

0

問題は、mouseup関数でボタンの動きを止めようとしていることです。しかし、ボタンはまったく動かないので、スクリプトは基本的にこのコードを無視します。機能を からthisに変更すると#photosContainer、 で停止しますmouseup

$('#scrollUp').mouseup(function(){
  $('#photosContainer').stop(true);
});

$('#scrollDown').mouseup(function(){
  $('#photosContainer').stop(true);
});

コードには設定trueと矛盾するものは何もないため、実際には必要ありませんstop()true

on()関数をに変更することもお勧めしますmouseupmousedown

于 2013-08-04T17:09:20.963 に答える