• Dev
  • 20th
  • Tips
  • English
  • Favorites
  • Others
temp

a deck for makers but poor

clickのマルチデバイス対応

2016/11/25 by IKIX_temp

 マウスはclickするものだ.マウスで操作するウェブページならJavaScriptでclickイベントを仕掛けておけば問題なく動く.しかし,タッチ操作のデバイスだとclickでは動かないことがある.touchstart, touchmove, touchend, touchcancelの4つリスナーが定義されている.しかし,だからといってclickをtouchstartに書き換えたり,clickとtouchstartを併記さえすればよいわけではない.
 もちろんそれらも必要な実装である.しかし,次の文はタッチでは動かない.
$('body').on('click', 'p', function () { ... });
$(document).on('click', 'p', function () { ... });

 これに対して次のような解決がある.

  1. bodyやdocumentを書かず,具体的な要素を書く
  2. $('.container').on('click', 'p', function () { ... });

  3. CSSで要素に{cursor: pointer;}を指定する
  4. $(document).on('click', 'p', function () { ... });
    --------------------------------------
    p{cursor: pointer;}

  5. もちろんonclickは動く
  6. <body>
    <p id="child1" onclick="">...</p>
    <p id="child2" onclick="">...</p>
    </body>

 

カテゴリー: Tips タグ: Android, iOS, Web
← Web系資格まとめ
ECサイト →

Search

Tags

20th century Angular AP ASD Git Google HTML5 iOS IoT JS LW MCSA MS MVC NFT Office PCインストラクター PHP Processing Python SQL Town UNIQLO UX Web Windows WP YouTube アルゴリズム グラフ理論 ゲノム栄養学 サーバ管理 デザイン デバイス ミニマリズム モバイル 信仰 声楽 情報建築 技能士 投資 政治 文学 日曜数学 本

Archive

Copyright © 2025 temp.

Omega WordPress Theme by ThemeHall