W3QはBiztterに生まれ変わりました!
Web制作に関するお悩みはBiztterへどうぞ!

Biztterで質問する

ID:24JdaS さんの質問

jqueryのイベントバブリングについて質問
PCにて横から出てくるスライドナビ的なものを設置したとして、スライドナビでた時に、スライドナビの「上で」マウスでスクロールした時だけ、背面のコンテンツは、スクロールさせない。
という事をしたいのですが、以下の記述ではダメでした。
$("header nav").on("scroll", function(event){
event.stopPropagation();
});

根本的に間違っている?
アドバイスいただけませんでしょうか?

みんなの回答 2 件

ID:24JdaS さんの回答

ちなみに、出てくるナビゲーションは、fixedで固定されています。
よろしくお願いします。

ID:DKvjqb

開いた時に、CSSでhtml { height:100%; overflow:hidden}にすればいいんじゃない?
あと、それバブリング関係ないわ。

ID:24JdaS

スクロールイベントがバブリングしてるのかと思ってましたが。違うのか。。?

ただ、ナビ開いた時ではダメで、ナビ以外の部分でのスクロールは効いてほしいのです。

ID:qhR1ZM

なんとなく言いたいことは分かったかも。メインコンテンツとスライドナビの2カラムがそれぞれきちんと独立してスクロールできるようにしたいってことでしょうか。fixedで固定したスライドナビにoverflow:scrollしてますか?

ID:24JdaS

そうなんです。スライドナビはoverflow:scrollにしています。ナビの上でスクロールすると、ナビも、背面のコンテンツも両方スクロールしてしまう。という感じなのです。

ID:24JdaS さんの回答

実は別の方法で(ナビ上にマウスオーバー時にbodyをFIXマウスアウトで、FIX解除)解決したのですが、この現象は、ナビ上でのスクロールイベントが、親要素のコンテンツでもバブリングしているのかと思っていたのですが、違うんでしょうか?

最終更新日:2016-02-26 (767 views)

関連するトピックス

ページ上部に戻る