jqueryとdivメニューに少し問題があり、正しく隠れていません!スクロール中に他の要素が重なっている場合のメニュー(div)を非表示
1ページのサイトがあり、ユーザーがスクロールしている間にウィンドウの後に表示されるビューポートの上部に固定メニューがあります。すべてのナビゲーションは、(divの高さによっては)縦スクロールのようなものです。
すべてのページのコンテンツは、以下のように別々のdivにあります。
<!-- this is the menu-->
<ul id="jmenu" style="position:fixed; z-index:9999">
<li>...</li>
<li>...</li>
</ul>
<!-- this is the structure section-->
<div id="first">...</div>
<div id="second">...</div>
<div id="third">...</div>
<div id="fourth">...</div>
などとなる。
それは (この場合は、いくつかのH1タグ)いくつかのテキストを重ねています場合、私は、メニューを非表示にするには、このjqueryのコードやライブラリjQueryのオーバーラップ(https://github.com/brandonaaron/jquery-overlaps)を使用var over= false;
$(document).scroll((function() {
if($('#jmenu').overlaps("h1") && (over==false)){
$('#jmenu').fadeOut("slow");
over= true;
}else{
$('#jmenu').fadeIn("slow");
over= false;
}
}));
しかし、これについて何か間違っています。すべてのページをすばやくスクロールし、メニューが多数の異なるh1と重複すると、メニューが点滅し始めます。
誰かが私が間違っていることを教えてもらえますか?
いいえ...エフェットは同じです。点滅は続く:( – MrSlash