ウェブモバイル終了タッチイベント

1.携帯端末とPC端末との間の差

当然、何のマウスの動きを終了していない、何のマウスイベント。だから、OnMouseDownイベントのリスナーのような時に携帯側無効。
ダブルクリックイベントに応答して、モバイル端末は、のonclickイベントは300ミリ秒の遅延があり、次回を見てみたいので、300ミリ秒を再度クリックする必要があり、クリックするとみなされていない場合いずれかが、考えをダブルクリックします。
のみ理論的に300msの遅延が、実際には、この遅延は、各電話機に異なる場合があり、次のコードは、電話のonclickイベントの現在の遅延をテストします

<script>
    var now
    document.ontouchstart = function(){
        // 返回 1970 年 1 月 1 日至今的毫秒数
        now = new Date().getTime()
        console.log("touchstrat")
    }
    document.onclick=function(){
        // 计算延时
        var delay = new Date().getTime() - now
        console.log("onclick")
        console.log(delay+"ms")
        // 真机测试使用alert()
    }
</script>

テストの後、クロムシミュレータ実質的に88から120の間のonclick遅延
実機iphone6spには、onclickの遅延は約80で安定

2.touchイベント

タッチイベントが延期されていない、,, PCエンドをサポートしていない携帯端末に固有である
:彼は次のイベントがある
touchstart:タッチイベントの開始
touchmoveを:指すべり(連続トリガ)
touchstendを:イベントの最後には触れ
touchcancalを:予期しないタッチ割り込みイベント(ハーフウェイの電話?)

基本的な使い方:

<script>
    document.addEventListener("touchstart",function(){
        console.log("touchstart")
    })
    document.addEventListener("touchmove",function(){
        console.log("touchmove")
    })
    document.addEventListener("touchend",function(){
        console.log("touchend")
    })
</script>

3.touchEventイベントオブジェクト

タッチイベントのイベントオブジェクトは、現在のイベントに関する情報の範囲を記述する

e.touches:画面上のすべてのタッチポイントの現在のリスト
targetTouches:オブジェクト上のすべてのタッチポイントの現在のリスト
のトリガ・イベントのタッチポイントを変更するには、コレクション:changeTouches
各タッチイベントには、次のプロパティが含まれています
clientXは:ビューポートでターゲットをタッチx座標。
clientYプロパティ:y座標として、口の中でターゲットをタップ。
識別子:ユニークIDは、タッチを識別します。
pageX:Xページ上のタッチターゲットの座標。
pageY:ページのy座標にターゲットをタッチします。
がscreenX:X画面の座標にターゲットをタップ。
screenYの:y座標画面でターゲットをタップ。
対象:タッチDOMノードのターゲット。

4.Aリンクは、プログラムをジャンプ

移動クリックイベントリンクエンド遅延、予防することによってリンクされ、デフォルトのイベントをマスクするイベントをジャンプtouchstartこと

おすすめ

転載: www.cnblogs.com/OrochiZ-/p/11621150.html