この記事では、簡単なドラッグ効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。 まず実装の効果を見てみましょう。 アイデア:マウスの押下、移動、リリースの3つのイベントを使用します まずボックスを作成し、CSSスタイルを設定します HTML: //html <div> <p>私は青い箱です</p> </div> CS: ... CS *{マージン: 0;パディング: 0;} div{ 幅: 100ピクセル; 高さ: 100px; 背景色: コーンフラワーブルー; 位置: 絶対; } p{ 幅: 100ピクセル; 高さ: 100px; 行の高さ: 100px; フォントサイズ: 10px; 色: #fff; テキスト配置: 中央; 遷移: すべて .5 秒; } p:ホバー{ 変換: translateY(-5px); 遷移: すべて .5 秒; ボックスシャドウ: 10px 10px 5px グレー; } 次にJSで対応するメソッドを設定します var div = document.querySelector('div'); var p = document.querySelector('p'); //まず変数xとyを定義して初期化します var x = 0; 変数 y = 0; // var i = 3; var TorF = false; //ボックス内のテキストは選択できません div.onselectstart = function (e) { false を返します。 } div.addEventListener('mousedown',function(e){ // クライアント: マウスボタンが押されたときのマウスポインターの座標を出力します。x = e.clientX; y = e.clientY; // 形式: obj.offsetLeft: 左と上のオフセットを取得します // 特記事項: このプロパティは読み取り専用であり、値を割り当てることはできません。 // 現在の要素と親要素 (本体) の左側の間の距離を返します。// ここで、l と t はグローバル変数を宣言するのではなく、グローバル オブジェクトのプロパティを作成します。 l = div.offsetLeft; t = div.offsetTop; // マウス設定の移動矢印 div.style.cursor = 'move'; p.innerHTML = '圧迫されました^_^'; TorF = true; }); // 画面全体が移動イベントをトリガーしたとき document.addEventListener('mousemove',function(e){ // falseの場合は関数の実行を終了し、関数の値を返します。if (Torf == false) { 戻る; } // この関数でローカル変数を定義します var twox = e.clientX; var twoy = e.clientY; // 取得したマウス ポインターの座標を使用します - (マウス ポインターの座標 - オフセット) = マウス ドラッグの実際の位置 // 元の取得には単位がないため、px 単位を最後に追加する必要があります var twol = twox - (xl); var twot = twoy - (yt); div.style.left = twol+'px'; div.style.top = twot+'px'; p.innerHTML = '私は引きずられています-.-'; }); div.addEventListener('mouseup',function(){ // キーボードを放したときにマウス移動イベントを停止します TorF = false; // マウスはデフォルトのスタイルを復元します div.style.cursor = 'default'; p.innerHTML = 'QAQ で返送されました'; }) 知らせ: 1. ボックスの位置を制御したい場合は、ボックスに位置を追加する必要があります。そうしないと、ボックスは移動しません。 2. offsetLeft プロパティは読み取り専用であり、値を割り当てることはできません。 3. マウス位置の計算: マウスポインターの座標 - (マウスポインターの座標 - オフセット) = 実際のマウスドラッグ位置 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL データベース接続例外の概要 (収集する価値あり)
任意のテキスト エディターを開き、次のコードをコピーして、たとえば SomeFilename.htm...
レンダリングBlog Gardenでよく使われるスタイル /*タイトル h1 h2 h3 スタイル*...
VMware Workstation を使用して Windows 10 で仮想マシンを開くと、VMw...
開発プロジェクトでは、MySQL のスロークエリログを通じて効率の問題のある SQL を監視できます...
目次1. 元の値と参照値2. インスタンス3. 範囲1. 元の値と参照値6 つの単純なデータ型の値は...
#事例: 従業員の給与水準を照会する 選択 給与、等級 から 従業員 参加する ジョブグレード g ...
この記事では、MySQL ユーザー管理操作について説明します。ご参考までに、詳細は以下の通りです。こ...
CSS 組み合わせセレクターには、単純なセレクターのさまざまな組み合わせが含まれます。 CSS3 に...
この記事では、Web ページ レイアウト デザインのいくつかの簡単な原則をまとめ、Web ページ デ...
URL 書き換えは、Web サイトの優先ドメインを決定するのに役立ちます。同じリソース ページの複数...
1. axiosプラグインをダウンロードする cnpm インストール axios -S 2. mai...
一部のWebサイトでアップロードする場合、「参照」ボタンをクリックすると、[ファイルの選択]ダイアロ...
1. CPU使用率sar -p (一日中表示) sar -u 1 10 (1: 1秒ごと、10: 1...
目次1. スクリプトvim環境2. シェルスクリプトで環境を定義する方法3. シェルスクリプト内の翻...
ここには複数の Tomcat があります。それらを同時に使用する場合は、ポート番号を別の番号に変更す...