質問: 元々PC向けに制作されたコンテンツを、今回スマホ等のタッチデバイスにも対応させたいと思っております。 既存コンテンツに、**テキスト・・・** というブロックがあり、PCブラウザでは、ダブルクリックを検出した場合は、特別な処理(そのブロックを非表示にする)、マウスでテキスト選択された時は、通常のコピペ操作が行える という実装で正常に動いておりました。 今回、タッチデバイス対応で、ダブルタップの検出に hammer を利用したのですが、ダブルタップは正しく検出できるのですが、通常のコピペ操作ができなくなってしまいます。(タッチデバイス・PCとも) jquery.hammerのオプション指定で、タップ操作はスルーし、ダブルタップのみハンドリングする事で、テキスト選択も可能にならないか調べていましたが、なかなかこのオプション指定の具体的な例が少なく、ドキュメントにもjQuery版の指定例は無いようで(get/setメソッドはある)困っております。 できればコードの統一と見通し確保の為(jQuery前提の案件なので)、get/setではなく、jQuery版の hammer(**option**) の、optionで対応したいとおもっております。 **option** の具体的な記述例(例えばダブルタップ以外は一時的に全スルーする指定など)をご存じの方、紹介されている記事のURL等ご存じの方、情報をお願いしたく投稿させていただきます。 hammerは、最新:v2.0.8 - 2016-04-23 を利用しています。 以上、よろしくお願いいたします。
回答: ブラウザの開発者ツールで見ていると、hammerでバインドした要素に user-select:none というスタイルが追加されている事に気がつきました。(user-select: というのは今回初めて知りました) で、hammerをバインドした要素の子・孫にあたる選択したいテキストを含む要素のスタイルに user-select:text と記述することで、ダブルタップと選択が可能になしました。 hammerのoptionで、この辺りを制御する指定もあるとは思いますが、やはりoptionの方は、指定の仕方を含めて解からずじまいです。