4

github サイトや、Zynga Scroller のクリック イベントを検出する方法をグーグルで検索しても、例が見つかりません。

たとえば、Pull-to-refreshデモから始めると、次のコードが含まれています。

if ('ontouchstart' in window) {
    container.addEventListener("touchstart", function(e) {
        scroller.doTouchStart(e.touches, e.timeStamp);
        e.preventDefault(); // Problem !!! 
}, false);

常にデフォルトを防止しているため、スクロール可能なリストの行をクリックすることはできません。その行を削除すると、クリックできますが、スクロールは機能しません。

クリックを検出する他の方法はありますか?

(コンピュータでは動作しますが、ontouchstart イベントのあるスマートフォンでは動作しません (iPhone 4s))

4

2 に答える 2

1

オンの防止 e.preventDefault();を確認しtouchstartます。

それをコメントして、関数の最後に追加e.preventDefault();します。touchmove

それは私のためにトリックをしました。

于 2013-08-28T09:47:39.920 に答える
1

これは、scrollerObject がユーザーのアクションを防止するためです。たとえば、EazyScroller.js で使用する Zynga スクローラー プラグインによっては、このコードを検索し、次の行のe.preventDefault()that.scroller.doTouchStart(e.touches, e.timeStamp)を削除します。

that.scroller.doTouchStart(e.touches, e.timeStamp);
//e.preventDefault();

于 2013-04-28T00:19:04.333 に答える