ホームページ > ウェブフロントエンド > CSSチュートリアル > ホイールと矢印キーをスクロールしたままスクロールバーを無効にする方法

ホイールと矢印キーをスクロールしたままスクロールバーを無効にする方法

Barbara Streisand
リリース: 2024-12-05 00:39:11
オリジナル
655 人が閲覧しました

How to Disable Scrollbars While Keeping Wheel and Arrow Key Scrolling?

ホイールと矢印のスクロール機能を維持しながらスクロールバーを無効にする

重要なスクロール機能を維持しながらスクロールバーを無効にしてユーザー エクスペリエンスを向上させることは、さまざまな手法で実現できます。 。この記事では、生の JavaScript と jQuery を使用してこれを実現する方法について説明します。

生の JavaScript

生の JavaScript でスクロールバーを無効にするには、overflow: hidden プロパティを利用します。

body {
  overflow: hidden;
}
ログイン後にコピー

マウス ホイールによるスクロールを模倣するには、scrollTop を調整する関数にホイール イベントをバインドします。値:

document.body.addEventListener("wheel", function (e) {
  document.body.scrollTop += e.deltaY;
});
ログイン後にコピー

矢印キー ナビゲーションの場合、keydown イベントをバインドしてキーの押下を検出し、それに応じてscrollLeftとscrollTopを調整します:

document.body.addEventListener("keydown", function (e) {
  switch (e.keyCode) {
    case 37: // Left arrow
      document.body.scrollLeft -= 10;
      break;
    // Implement other arrow key cases...
  }
});
ログイン後にコピー

jQuery

jQuery はこれらの簡略化された実装を提供します。概念:

// Disable scrollbars
$("body").css("overflow", "hidden");

// Mouse wheel scrolling
$("#example").bind("mousewheel", function (ev, delta) {
    $(this).scrollTop($(this).scrollTop() - Math.round(delta));
});

// Arrow key scrolling
$("body").keydown(function (e) {
    switch (e.keyCode) {
        case 37: // Left arrow
            $(this).scrollLeft($(this).scrollLeft() - 10);
            break;
        // Implement other arrow key cases...
    }
});
ログイン後にコピー

結論

これらの技術を採用することで、開発者は、ユーザーがコンテンツ内を移動できるようにしながらスクロールバーを非表示にすることで、より直感的で視覚的に魅力的なユーザー エクスペリエンスを提供できます。シームレスに。

以上がホイールと矢印キーをスクロールしたままスクロールバーを無効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート