Code

2014年8月7日木曜日

iOS 7 Safari リンク 2回クリック問題

 今日新しい問題を発見しました。以前はこのようなサイトを作ってなかったから、わからなかったが、iOS 7 から :hover クラスの中に display と visibility があれば、一回目の touch は hover 状態にして、2回目のタッチは実際のリンクに行きます。。。
 調べてみたら、どうやら iOS 7 からいろいろ変わってきました。
  ios-has-a-hover-problem
 
 具体的に言うと、以前の Touch Device では、:hover クラスを無視しましたが、iOS 7 からは
   div span {display:none}
   div:hover span {display: block}
みたいな動作を見逃さないように、一回目のタッチを :hover にして、つまり span を表示させて、このとき、click イベントがトリッガーしません。2回目のタッチで、click になります。。。
 これは困ったな〜
 ネットでは :hover を no-touch クラスをつけて、タッチデバイスではなければ、no-touch を外すという直す方法がありますが、個人では、display:none の要素を opacity で隠したりしたほうがいいかもしれません。
 まぁ、まだいろいろ試しているところ。。。また後日追記します。
 それでは。

0 件のコメント:

コメントを投稿