独自のスクロールバーで要素の上部/下部に到達したときにマウスホイールのスクロールがページ全体をスクロールするのを防ぐために、Brandon Aaron のMousewheel pluginを使用しています。
スクロールが速すぎない限り、これはうまく機能します。非常に速くスクロールすると、2 つのイベントが「まだ上/下に到達していません」チェックを通過し、両方が実行されるようです。ただし、そのうちの1つは要素を上/下にスクロールし、次の要素はページ全体をスクロールします。これは私が防止しようとしていたものです。
私は現在これをやっています
$('.popupContents').bind('mousewheel', function (e, d) {
var t = $(this);
if (d > 0 && t.scrollTop() === 0) {
e.preventDefault();
} else if (d < 0 && (t.scrollTop() == t.get(0).scrollHeight - t.innerHeight())) {
e.preventDefault();
}
});
(親要素のスクロールを防止しますか? に投稿されているとおり)
ユーザーがすばやくスクロールしても、関数がすべてのイベントを上部/下部で適切に停止するようにするにはどうすればよいですか?