マウスで画像を動かすJavaScript

マウスで画像を動かすJavaScript

この記事では、マウスの動きに追従する画像を実現するためのJavaScriptの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。

実装のアイデア

1. ドキュメントにmousemoveイベントをバインドし、マウスの座標を取得します: e.pageX、e.pageY
2. 画像を絶対位置に設定します: position: absolute;
3. 画像要素オブジェクトを取得し、マウスのx座標とy座標をそれぞれ画像の左と上の値に割り当てます。マウスを画像の中央に配置するには、画像の幅と高さの半分を減算して、画像を上と左に配置します。注:単位「px」を追加することを忘れないでください。

ヒント:

e.clientX - ブラウザウィンドウの表示領域を基準としたマウスのX軸座標を取得します。
e.clientY - - - ブラウザウィンドウの表示領域を基準としたマウスのY軸座標を取得します。
e.pageX - ドキュメントページを基準としたマウスのX軸座標を取得します。
e.pageY - ドキュメントページに対するマウスのY座標を取得します。
e.screenX - コンピュータ画面を基準としたマウスのX軸座標を取得します。
e.screenY - コンピュータ画面に対するマウスのY座標を取得します。

コード例:

<!DOCTYPE html>
<html lang="ja">

<ヘッド>
    <メタ文字セット="UTF-8">
    <meta http-equiv="X-UA-compatible" content="IE=edge">
    <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
    <title>マウス座標を取得する</title>
    <スタイル>
        画像 {
            /* 幅: 80px;
            高さ: 90px; */
            位置: 絶対;
        }
    </スタイル>
</head>

<本文>
    <img src="images/斑.png" alt="">
    <スクリプト>
        var img = document.querySelector('img');
        document.addEventListener('mousemove', 関数(e) {
            var x = e.pageX;
            var y = e.pageY;
            img.style.top = y - 40 + 'px';
            img.style.left = x - 48 + 'px';
        })
    </スクリプト>
</本文>

</html>

ページ効果:

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

以下もご興味があるかもしれません:
  • マウスの動きに追従する画像の効果を実現するために JavaScript を使用する方法
  • マウスで移動するテキストを実現する js メソッド
  • js画像はマウスの動きのコードに従います
  • JavaScript DIVはマウスの動きに追従します
  • マウスの動きに合わせて泡のアニメーション効果を実現するには、JS を使用します。
  • JavaScript を使用して、マウスをホバーするとマウスに追従する矢印付きのポップアップ情報レイヤーを実装する
  • jsはマウスの動きに追従する画像の効果を実現します
  • JavaScriptはマウスのx座標とy座標に従ってテキスト効果を移動します
  • jsはマウスの動きに追従する小さなボールを実現します
  • jsは画像の拡大やマウスの動きに追従する特殊効果を実現します

<<:  Centos は chrony 時間同期サーバー プロセス図を構築します

>>:  プロフェッショナルなMySQL開発設計仕様とSQL記述仕様

推薦する

Linux に MySql 5.7.21 をインストールするための詳細な手順

序文Linux で最も広く使用されているデータベースは MySQL です。この記事では、Linux ...

MySQL ストアド プロシージャの作成、呼び出し、管理の詳細な説明

目次ストアドプロシージャの概要ストアド プロシージャを使用する理由は何ですか?ストアドプロシージャの...

Linux ディスク パーティションの実装の原理と方法の分析

覚えて: IDE ディスク: 最初のディスクは hda、2 番目のディスクは hdb...最初のディ...

Nginx10m+の高並列カーネル最適化に関する簡単な説明

高い同時実行性とは何ですか?デフォルトの Linux カーネル パラメータは、最も一般的なシナリオ向...

CentOS7 64ビットインストールmysqlグラフィックチュートリアル

MySQL をインストールするための前提条件: CentOS 7 64 ビットをインストールし、Ce...

テーブルの4辺を上下左右にスクロールするように固定する方法

質問:最近、プロジェクトの統計を行っていたときに、テーブルを上下にスクロールしたときにテーブルの先頭...

NginxにLuaモジュールを追加する方法

luaをインストールする http://luajit.org/download/LuaJIT-2.0...

Nginx Rewrite の使用シナリオとコード例の詳細な説明

Nginx Rewriteの使用シナリオ1. URL アドレスジャンプ。たとえば、ユーザーが pm....

MySQL 同時実行制御の原則に関する知識ポイント

Mysql は、高性能なデータ ストレージ サービスを提供する主流のオープン ソース リレーショナル...

Vue.js を学ぶ際に遭遇する落とし穴

目次クラス void のポイントES6 矢印関数ヴュートファイvue-cli非同期と同期実行と展開ヒ...

MySQL テーブルにはどのくらいの量のデータを保存できますか?

プログラマーは MySQL を扱う機会が多く、毎日触れているとも言えますが、MySQL テーブルには...

JavaScript axiosのインストールとパッケージ化のケースの詳細な説明

1. axiosプラグインをダウンロードする cnpm インストール axios -S 2. mai...

Nginx 構成 80 ポート アクセス 8080 とプロジェクト名アドレス メソッド分析

Tomcatはプロジェクトにアクセスします。通常はIP + ポート + プロジェクト名です。 Ngi...

Linuxホスト名変更コマンドの詳しい説明

Linux ホスト名変更コマンド1. ホスト名を一時的に変更するだけの場合は、hostname コマ...

Vue echarts は水平棒グラフを実現します

この記事では、水平棒グラフを実現するためのvue echartsの具体的なコードを参考までに共有しま...