6
4

6 に答える 6

3

iPhone がホバー状態を尊重するようにします。

<ul>
  <li onclick="//">test</li>
  <li onclick="//">test</li>
  <li onclick="//">test</li>
</ul>
于 2012-04-26T06:36:12.293 に答える
3

これは、JavaScript を使用して修正できます。次のスクリプトは、ホバーをクラスとして<li>要素に追加します。

<script type="text/javascript">
$("li").hover(
  function () {
    $(this).addClass("hover");
  },
  function () {
    $(this).removeClass("hover");
  }
);  
</script>

次のように、CSSli.hoverに取得した場所を追加するだけです。li:hover

これ:

ul li:hover ul{
    display:block;
}

次のようになります。

ul li:hover ul,
ul li.hover ul,{
    display:block;
}

jQuery ドキュメント:
http://api.jquery.com/hover/
http://api.jquery.com/addClass/

于 2012-04-07T11:17:43.553 に答える
2

iPhoneで動作するようにdiv:hoverを処理する最良の方法を見つけました。JavaScriptを使わずに

要素を cursor: pointerアンカータグのように機能させる

CSS

ul li { カーソル: ポインタ}

また、プルダウン メニューの外側をクリックしても、実際のリンクをクリックしない限り iPhone では閉じないことに気付くでしょう。モバイルではカーソルが表示されないため、これが私が作成したソリューションです。

CSS

本体 { カーソル: ポインター }

于 2014-07-03T04:03:34.287 に答える
0

iPhone などには特にホバー状態はありませんが、リンクのホバー状態は、ユーザーがリンクをタップすると起動されます。通常、ダブルタップすると実際にリンクがたどられます。

おそらく HTML を再構築して、リスト アイテムだけでなく、ホバー状態のアンカーを持つようにします。JS は必要ありません。

于 2012-04-24T00:57:30.527 に答える
0

http://blog.0100.tv/2010/05/fixing-the-hover-event-on-the-ipadiphoneipod/

//ipad and iphone fix
if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i))) {
    $(".menu li a").click(function(){
        //we just need to attach a click event listener to provoke iPhone/iPod/iPad's hover event
        //strange
    });
}
于 2015-09-02T08:15:08.450 に答える
0

スタイルに :focus と :active を追加します。

ul li ul{display:none} ul li:focus ul,ul li:active ul{display:block}

于 2012-04-28T09:34:21.460 に答える