0

eventListener( scrollView.addEventListener('scroll',function(){});) が複数回呼び出されたら、任意のボタン (left_btn または right_btn) をクリックすると、Titanium SDK 3.0.0.GA でこのコードを使用しています。

この問題を解決するにはどうすればよいですか?

right_btn.addEventListener('singletap', function() {
       scrollView.scrollToView(scrollView.currentPage + 1);

});
left_btn.addEventListener('singletap', function() {
    scrollView.scrollToView(scrollView.currentPage - 1);
});

scrollView.addEventListener('scroll', function() {
        alert("scroll view");
});

私を助けてください!前もって感謝します。

4

1 に答える 1

2

イベント関数で必要なことを行った後、 removeEventListener を使用してイベントを削除できます。

function scrollEvent() {
    alert('scroll view');
    scrollView.removeEventListener('scroll', this);
}

scrollView.addEventListener('scroll', scrollEvent);

または、一時的なブール変数を宣言して、イベントが既に発生しているかどうかを判断します。

var fired = false;
scrollView.addEventListener('scroll', function() {
    if (!fired) {
        alert('scroll view');
        fired = true;
    }
});
于 2013-01-06T14:21:19.557 に答える