各メニュー項目にカーソルを合わせるとサブリンクのドロップダウンを表示するJavaScript(jQuery btwではないことが望ましい)Webサイトメニューを作成しようとしています。私はほぼ完全に機能していますが、少し壁にぶつかり、オンラインで解決策を見つけることができません。
メニューボタンには、サブリンクパネルを表示およびアニメーション化するマウスオーバーイベントがあります。別のメニューボタンにマウスを合わせるとパネルが消え、別のメニューボタンにカーソルを合わせると新しいパネルが表示されます。問題は、マウスを目的のメニューボタンからそれぞれのパネルに移動すると、マウスが消えることです。これは、メニューボタンにマウスアウトイベントがあり、それを実行するためです。ボタンにオンマウスアウトが必要ですが、マウスがパネル上を移動したときに非表示機能が起動しないようにするにはどうすればよいですか?
私はこれを回避する方法を考えようとしましたが、これまで失敗したので、どんな助けでも大歓迎です!
ありがとう、
アンディ
<script type="text/javascript">
var anim = new Animator();
function Animator() {
this.slideDown = function (element, height) {
var e = document.getElementById(element);
var counter = 0;
e.style.display = 'block';
var interval = window.setInterval(function () {
counter += 2;
e.style.height = counter + 'px';
if (counter >= height) {
clearInterval(interval);
}
}, 1);
};
this.hideSlide = function (element) {
var e = document.getElementById(element);
e.style.display = 'none';
e.style.height = 0 + 'px';
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="divMenuBar">
<div class="menuButton" onmouseover="anim.slideDown('divMenu1', 305);" onmouseout="anim.hideSlide('divMenu1');">Click Me</div>
<div id="divMenu1" class="slidingMenu menu1">
<ul>
<li>Option 1</li>
<li>Option 2</li>
<li>Option 3</li>
<li>Option 4</li>
<li>Option 5</li>
<li class="end">Option 6</li>
</ul>
</div>
<div class="menuButton" onmouseover="anim.slideDown('divMenu2', 305);" onmouseout="anim.hideSlide('divMenu2');">Click Me</div>
<div id="divMenu2" class="slidingMenu menu2">
<ul>
<li>Option 1</li>
<li>Option 2</li>
<li>Option 3</li>
<li>Option 4</li>
<li>Option 5</li>
<li class="end">Option 6</li>
</ul>
</div>
<div class="menuButton" onmouseover="anim.slideDown('divMenu3', 305);" onmouseout="anim.hideSlide('divMenu3');">Click Me</div>
<div id="divMenu3" class="slidingMenu menu3">
<ul>
<li>Option 1</li>
<li>Option 2</li>
<li>Option 3</li>
<li>Option 4</li>
<li>Option 5</li>
<li class="end">Option 6</li>
</ul>
</div>
<div class="menuButton" onmouseover="anim.slideDown('divMenu4', 305);" onmouseout="anim.hideSlide('divMenu4');">Click Me</div>
<div id="divMenu4" class="slidingMenu menu4">
<ul>
<li>Option 1</li>
<li>Option 2</li>
<li>Option 3</li>
<li>Option 4</li>
<li>Option 5</li>
<li class="end">Option 6</li>
</ul>
</div>
</div>
</form>