1

HTML5で指があるポイントから別のポイントに移動した速度(velocityX)を取得するにはどうすればよいですか?私はアンドロイドで速度(velocityX)を使用しました。

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY){

    private static final int SWIPE_MIN_DISTANCE = 30;
private static final int SWIPE_MAX_OFF_PATH = 200;
private static final int SWIPE_THRESHOLD_VELOCITY = 400;


try {
    if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
        return false;
    // right to left swipe
    if(e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {

        startActivity( new Intent( this, x.class ) );
    }  else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
        //  Toast.makeText(getApplicationContext(), "Right Swipe", Toast.LENGTH_SHORT).show();

        startActivity( new Intent( this , aasas.class) );




    }
    else if(e1.getY() - e2.getY() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {

    }  else if (e2.getY() - e1.getY() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {

    }
} catch (Exception e) {
    // nothing
}

return true;

}

html5でこのように同じように実装したいのですが、velocityXを取得できず、html5コードはこれです

      this.downX = null;
   this.upX = null;

document.body.addEventListener('touchstart', function(event) {
        event.preventDefault();
        console.log("movvv");
                this.downX = event.touches[0].pageX;

    }, true);

    document.body.addEventListener('touchmove', function(event) {
        event.preventDefault();
        this.upX = event.touches[0].pageX;
    }, true);


    document.body.addEventListener('touchend', function(event) {
        event.preventDefault();

        if ((this.downX - this.upX) > 50) {

            console.log("goooo");

        }
        if ((this.upX - this.downX) > 50) {

        }


    }, true);

実際、Androidのこの行をHtml5に変更したい

if(e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY)

Android onSingleTapUp のように HTML5 でシングルタッチの機能があれば教えてください。

4

0 に答える 0