css を使用してページの同じ位置に留まりたいメニューがあります。
position:fixed;
top: 0;
しかし、ページがスクロールしたときにメニューが特定の領域の外に出ないようにしたい. この例を参照してください (結果ウィンドウをスクロールしてください)。
これは CSS だけで行うことができますか、またはこれに対するエレガントな JS ソリューションを提案できますか?
どうもありがとう。
css を使用してページの同じ位置に留まりたいメニューがあります。
position:fixed;
top: 0;
しかし、ページがスクロールしたときにメニューが特定の領域の外に出ないようにしたい. この例を参照してください (結果ウィンドウをスクロールしてください)。
これは CSS だけで行うことができますか、またはこれに対するエレガントな JS ソリューションを提案できますか?
どうもありがとう。
Javaスクリプト(または非常にトリッキーなcssトリック?)なしでは機能しないと思いますが、JQueryを使用するオプションがある場合、解決策は非常に簡単です。
$(document).on('scroll', function () {
if ($(document).scrollTop() > ($("#container")[0].offsetTop + $("#container").height())) {
$("#menu").css({
display: "none",
});
}
else {
$("#menu").css({
display: "block",
});
}
});
条件では、実際のスクロール位置がコンテナーの先頭の下にあるかどうかを確認します。はいの場合、css はそれ以外の場合に#menu
変更されdisplay: none;
ますdisplay: block;
フィドルを参照してください: http://jsfiddle.net/Fg2MA/3/