0

メニューをクリックするとメニュー項目が表示され、menuitemからマウスアウトすると非表示になるシンプルなメニューを作成しています。

http://jsfiddle.net/MMHVv/3/

Firefoxでは、これは機能せず、menuItemマウスオーバーすると非表示になります

クロムではそれは正しく動作します

4

3 に答える 3

1

私はあなたのコードを見ました。

mousemoveFirefoxのイベントで何がうまくいかなかったのかわかりません

交換すれば問題なく動作mousemoveします。mouseover

onmouseover="return ShowMenu($(this));"
于 2013-02-28T06:41:30.910 に答える
1

通常、インラインJavaScriptは避けてください。http: //robertnyman.com/2008/11/20/why-inline-css-and-javascript-code-is-such-a-bad-thing/を参照してください。

代わりに、mouseoverおよびmouseout関数を使用する必要があります:http: //api.jquery.com/mouseover/

$(function() {
   $('#menu').mouseover(function() {
       $('#TestMenu').show();
   }).mouseout(function(){
    $('#TestMenu').hide();
   });;

});

http://jsfiddle.net/MMHVv/16/

TestMenuも最初のdiv内に配置する必要があるため、TestMenuにカーソルを合わせたときにもマウスオーバーが効果的です。

于 2013-02-28T06:47:08.177 に答える
0

あなたの構造だけでこれを試してみてくださいが、1つの編集[ removed the id for the menuitems]:

$(function () {
  $('.menu').on({
    mouseover: function () {
        $('.menuItem').slideUp();
        $(this).next().slideDown();
    }
  });
  $('.menuItem').on({
    mouseleave: function () {
        $(this).slideUp();
    }
  });
});

フィドルをチェックしてください

于 2013-02-28T07:05:18.907 に答える