JSはプログレスバーをドラッグして要素の透明度を変更することを実装しています

JSはプログレスバーをドラッグして要素の透明度を変更することを実装しています

今日ご紹介したいのは、ネイティブ JS を使用してプログレス バーをドラッグし、要素の透明度を変更する方法です。効果は次のとおりです。

以下はコード実装です。コピーして貼り付けていただいて結構です。

<!DOCTYPE html>
<html>
 
<ヘッド>
    <meta http-equiv="コンテンツタイプ" コンテンツ="text/html; charset=utf-8" />
    <title>ネイティブ JS ドラッグ プログレス バーで要素の透明度を変更する</title>
    <スタイル>
        #親 {
            幅: 400ピクセル;
            高さ: 20px;
            背景: #CCC;
            位置: 相対的;
            マージン: 20px 自動;
        }
 
        #div1 {
            幅: 20px;
            高さ: 20px;
            背景: 赤;
            カーソル: ポインタ;
            位置: 絶対;
        }
 
        #div2 {
            幅: 300ピクセル;
            高さ: 300px;
            マージン: 0 自動;
            フィルター:アルファ(不透明度:0);
            不透明度: 0;
            背景: 黄色;
        }
    </スタイル>
 
    <スクリプト>
        window.onload = 関数(){
 
            var oDiv = document.getElementById('div1');
            var oParent = document.getElementById('parent');
            var oDiv2 = document.getElementById('div2');
 
            oDiv.onmousedown = 関数 (ev) {
 
                var oEvent = ev || イベント;
                //スライダーに対するマウスの位置を計算します var disX = oEvent.clientX - oDiv.offsetLeft;
 
                document.onmousemove = 関数 (ev) {
 
                    var oEvent = ev || イベント;
                    //スライダーの動的な左値を計算します var l = oEvent.clientX - disX;
 
                    //ドラッグ範囲を制限する if (l < 0) {
 
                        0 の場合
 
                    } そうでない場合 (l > oParent.offsetWidth - oDiv.offsetWidth) {
 
                        l = oParent.offsetWidth - oDiv.offsetWidth;
                    }
 
                    oDiv.style.left = l + 'px';
 
                    //ドラッグ移動距離とドラッグ可能な合計範囲の比率を計算します。var scale = l / (oParent.offsetWidth - oDiv.offsetWidth);
 
                    //マウスをドラッグすると Div2 が徐々に表示または非表示になります oDiv2.style.filter = 'alpha(opacity:' + 100 * scale + ')';
                    oDiv2.style.opacity = スケール;
 
                };
 
                document.onmouseup = 関数(){
 
                    ドキュメント.onmousemove = null;
                    ドキュメント.onmouseup = null;
                };
            };
        };
    </スクリプト>
</head>
 
<本文>
    <div id="親">
        <div id="div1"></div>
    </div>
    <div id="div2"></div>
</本文>
 
</html>

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

以下もご興味があるかもしれません:
  • JavaScript でドラッグ可能なプログレスバーを実装する
  • JavaScript は水平方向のプログレスバーのドラッグ効果を実装します
  • スライドプログレスバー効果を実現する js
  • JSは円形のプログレスバーのドラッグとスライドを実装します

<<:  廃止された Docker は Podman に置き換えられますか?

>>:  HTML テーブルタグチュートリアル (46): テーブルフッタータグ

推薦する

ソケット '/tmp/mysql.sock' 経由でローカル MySQL に接続できない解決策

エラーメッセージ:エラー 2002: ソケット '/tmp/mysql.sock' ...

Dockerコンテナでユーザーを切り替えるときに権限が不足する問題を解決する方法

Docker コンテナでユーザーを切り替えると、権限が不十分であるというメッセージが表示されます。解...

MySQL データベースのホットスタンバイにおける問題点の分析

以前、MySQL データベースのデュアルマシン ホット スタンバイの設定方法を紹介しました。ご興味の...

KVM 仮想化のインストール、展開、管理のチュートリアル

目次1.kvmの展開1.1 kvmのインストール1.2 kvm Web管理インターフェースのインスト...

期間限定フラッシュセール機能を実現するJavaScriptタイマー

この記事では、期間限定フラッシュセール機能を実装するためのJavaScriptの具体的なコードを参考...

MySQL で遅いクエリ SQL を見つけて最適化する詳細な例

目次1. 遅いクエリSQLを見つけて最適化する方法a. スローログに基づいてスロークエリSQLを見つ...

シンプルなドラッグ効果を実現するjs

この記事では、簡単なドラッグ効果を実現するためのjsの具体的なコードを参考までに共有します。具体的な...

CSS3 グラデーション背景の互換性の問題

グラデーションの背景色を作成するときは、 linear-gradient() 関数を使用して線形グラ...

MySql インデックスを表示および最適化する方法

MySQL はハッシュ インデックスと Btree インデックスをサポートしています。 InnoDB...

css n番目から始まるすべての要素を取得する

具体的なコードは次のとおりです。 <div id="ボックス"> &...

Linux で MySQL 8.0 サービスを完全に削除する方法

この記事を読む前に、Linuxコマンド、特にcentos7.3環境でyumを使用してインストールされ...

MySQLチュートリアルではストアドプロシージャを徹底的に理解します

目次1. ストアドプロシージャに関連する概念2. ストアドプロシージャの使用1) ストアドプロシージ...

Nginx で何ができるかの包括的な分析

序文この記事は、サードパーティのモジュールをロードせずにNginxで処理できることのみに焦点を当てて...

LinuxシステムでのSystemC環境設定方法

以下はcentos7での設定方法ですsystemc ソース パッケージをダウンロード: System...

最新のmysql-5.7.21のインストールと設定方法

1. ダウンロードしたMySQLの圧縮パッケージをインストールディレクトリに解凍します。 2. 新し...