jsは水平および垂直スライダーを実現します

jsは水平および垂直スライダーを実現します

最近、練習プロジェクトをしていたときにスライダーを使う必要があったので、調べてみました。

まず、水平スライダーを見てみましょう。効果は次のとおりです。

コードは次のとおりです。

<html>
 <ヘッド>
  <メタ文字セット="UTF-8">
  <title>水平スライダー</title>
  <スタイル>
   * {
    マージン: 0;
    パディング: 0;
   }
 
   .スクロール{
    マージン: 100px;
    幅: 500ピクセル;
    高さ: 5px;
    背景: #ccc;
    位置: 相対的;
   }
 
   。バー {
    幅: 10px;
    高さ: 20px;
    背景: #369;
    位置: 絶対;
    上: -7px;
    左: 0;
    カーソル: ポインタ;
   }
   p{
    左マージン: 100px;
   }
  </スタイル>
 </head>
 <本文>
  <div class="scroll" id="scroll">
   <div class="bar" id="bar">
   </div>
  </div>
  <p></p>
  <スクリプト>
   //要素を取得します var scroll = document.getElementById('scroll');
   var bar = document.getElementById('bar');
   var ptxt = document.getElementsByTagName('p')[0];
   bar.onmousedown = 関数(イベント) {
    var イベント = イベント || window.event;
    // ページ イベントの X から、最も近い祖先を基準とした現在の位置にある要素を引いた値 var x = event.clientX - this.offsetLeft;
    document.onmousemove = 関数(イベント) {
     var イベント = イベント || window.event;
     var 左 = event.clientX - x;
     (左 < 0)の場合
      左 = 0;
     そうでない場合 (left > scroll.offsetWidth - bar.offsetWidth) {
      左 = scroll.offsetWidth - bar.offsetWidth;
     }
     //スライダーの左の位置を変更する
     bar.style.left = left + "px";
     ptxt.innerHTML = "現在のスライダーの移動率: " + parseInt(left / (scroll.offsetWidth - bar.offsetWidth) * 100) + "%";
     //選択を禁止する window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();
    }
 
   }
   //マウスがポップアップしたときは何もしない document.onmouseup = function() {
    ドキュメント.onmousemove = null;
   }
  </スクリプト>
 </本文>
</html>

垂直スライダーの効果は次のとおりです。

コードは次のとおりです。

<html>
 <ヘッド>
  <メタ文字セット="UTF-8">
  <title>垂直スライドバー</title>
  <スタイル>
   * {
    マージン: 0;
    パディング: 0;
   }
   。スクロール{
    マージン: 100px;
    幅: 5px;
    高さ: 320px;
    背景: #ccc;
    位置: 相対的;
   }
 
   。バー {
    幅: 15px;
    高さ: 5px;
    背景: #369;
    位置: 絶対;
    上: 0px;
    左: -5;
    カーソル: ポインタ;
   }
   p{
    左マージン: 100px;
   }
  </スタイル>
 </head>
 <本文>
  <div class="scroll" id="scroll">
   <div class="bar" id="bar">
   </div>
  </div>
  <p></p>
  <スクリプト>
   //要素を取得します var scroll = document.getElementById("scroll");
   var bar = document.getElementById("bar");
   var ptxt = document.getElementsByTagName('p')[0];
   //イベントを追加 bar.onmousedown = function(event) {
    var イベント = イベント || window.event;
    // ページ イベントの Y から、最も近い祖先を基準とした現在の位置にある要素を引いた値 var y = event.clientY - this.offsetTop;
    //ドラッグは下に書き込む必要があります document.onmousemove = function(event) {
     var イベント = イベント || window.event;
     //移動距離を取得します。var top = event.clientY - y;
     (トップ < 0){
      上 = 0;
     }
     そうでない場合 (top > scroll.offsetHeight - bar.offsetHeight){
      上部 = scroll.offsetHeight - bar.offsetHeight;
     }
     //スライダーの上部を変更する
     bar.style.top = top + "px";
     // パーセンテージに応じて現在のスライド距離を取得します。 ptxt.innerHTML = "現在のスライダーの移動パーセンテージ: " + parseInt(top/(scroll.offsetHeight - bar.offsetHeight) * 100) + "%";
     //選択を禁止する window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();
    }
   }
   //マウスがポップアップしたときは何もしない document.onmouseup = function() {
    ドキュメント.onmousemove = null; 
   }
   
  </スクリプト>
 </本文>
</html>

ここで移動パーセンテージ表示効果を追加した理由は、主に将来的にバックグラウンドデータに接続する必要がある場合に動的制御の目的を達成するためです。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Javascript を使用して、スライドバー効果のあるスライドナビゲーション プラグインを開発します。
  • スライダーを作成するためのネイティブ js ドラッグ アンド ドロップ機能のサンプル コード
  • 水平画面と垂直画面を判断し、ブラウザのスライドバーを禁止するjsの例

<<:  MySQLデータベースのnullに関する知識ポイントのまとめ

>>:  Nginx フォワードプロキシとリバースプロキシの違いと原理分析

推薦する

MySQL 5.6 の「暗黙的な変換」によりインデックスが失敗し、データが不正確になる

背景SQL クエリを実行するときに、where 条件の vachar 型フィールドの単一引用符を削除...

MySQL ストアド プロシージャ、カーソル、トランザクションの例の詳細な説明

MySQL ストアド プロシージャ、カーソル、トランザクションの例の詳細な説明以下は私が作成した M...

Dockerを使用してブログサイトを素早く構築する方法の詳細な説明

目次1. 準備2. 展開プロセス3. アクセステストHalo は、ブログに慣れている学生に追加のオプ...

要素 el-button ボタンコンポーネントの使用の詳細な説明

1. 背景ボタンは非常によく使われており、Element のボタン機能は非常に包括的です。この記事で...

Mysql+JavaSwing に基づくスーパーマーケット商品管理システムの設計と実装

目次1. 機能紹介2. キーコード2.1 ホームページの機能2.2 製品情報を追加する2.3 データ...

Web Storage APIの使用に関する簡単な説明

目次1. ブラウザのローカルストレージ技術1.1、セッションストレージ1.2、ローカルストレージ2....

HTMLにおけるbackground-image属性の設定の詳細な説明

写真といえば、まず背景画像が思い浮かびます。私たちの装飾の多くは背景画像を使用して実現されているから...

シンプルなタブバー切り替えケースを実現するJavaScript

この記事では、タブバーの切り替え効果を簡単に実現するためのJavaScriptの具体的なコードを参考...

CSS3のtransform属性で実装される4つの機能

CSS3 では、transform 関数を使用して、テキストや画像の回転、拡大縮小、傾斜、移動という...

ログインインターフェースの使いやすさとセキュリティのバランスをとる方法

ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...

CSS3で作成した画像スクロール効果

成果を達成する実装コードhtml <base href="https://s3-us...

JavaScript 改ざん防止オブジェクトの使用例

目次JavaScript 改ざん防止オブジェクト1. 拡張不可能なオブジェクト2. 封印された物体3...

時間範囲効果を実現するためのJavaScript

この記事では、時間範囲効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します...

HTML テーブル マークアップ チュートリアル (14): テーブル ヘッダー

<br />HTML 言語では、タグを使用してテーブルにタイトルを自動的に追加できます。...

CSS3実践手法のまとめ(推奨)

1. 丸い境界線: CSSコードコンテンツをクリップボードにコピー境界線の半径: 4px ; 2....