マウスクリックでXY座標をPHP変数に取得する

レネゲードロブ

次のスクリプトは、ボックス内のある場所から別の場所にボールを移動します。

このボックス内でマウスがクリックされた場所の座標を収集し、クリック時のX座標とY座標をPHP変数に変換して、追加のPHPコードでこれを処理できるようにします。

どうすればこれを行うことができますか?

<!DOCTYPE html>
<html>

<head>
<title>Move to Click Position</title>
<style type="text/css">
body {
    background-color: #FFF;
    margin: 30px;
    margin-top: 10px;
}
#contentContainer {
    width: 550px;
    height: 350px;
    border: 5px black solid;
    overflow: hidden;
    background-color: #F2F2F2;
    cursor: pointer;
}
#thing {
    position: relative;
    left: 50px;
    top: 50px;
    transition: left .5s ease-in, top .5s ease-in;
}
</style>
</head>

<body>
<div id="contentContainer">
    <img id="thing" src="//www.kirupa.com/images/smiley_red.png">
</div>

<script src="//www.kirupa.com/prefixfree.min.js"></script>
<script>
var theThing = document.querySelector("#thing");
var container = document.querySelector("#contentContainer");

container.addEventListener("click", getClickPosition, false);

function getClickPosition(e) {
    var parentPosition = getPosition(e.currentTarget);
    var xPosition = e.clientX - parentPosition.x - (theThing.clientWidth / 2);
    var yPosition = e.clientY - parentPosition.y - (theThing.clientHeight / 2);

    theThing.style.left = xPosition + "px";
    theThing.style.top = yPosition + "px";
}

// Helper function to get an element's exact position
function getPosition(el) {
  var xPos = 0;
  var yPos = 0;

  while (el) {
    if (el.tagName == "BODY") {
      // deal with browser quirks with body/window/document and page scroll
      var xScroll = el.scrollLeft || document.documentElement.scrollLeft;
      var yScroll = el.scrollTop || document.documentElement.scrollTop;

      xPos += (el.offsetLeft - xScroll + el.clientLeft);
      yPos += (el.offsetTop - yScroll + el.clientTop);
    } else {
      // for all other non-BODY elements
      xPos += (el.offsetLeft - el.scrollLeft + el.clientLeft);
      yPos += (el.offsetTop - el.scrollTop + el.clientTop);
    }

    el = el.offsetParent;
  }
  return {
    x: xPos,
    y: yPos
  };
}
</script>
</body>
</html>

その後、私が持っている他のスクリプトでこれらを処理できます。

誰かがこれをどのように達成できるかを説明できれば、それは大いにありがたいです。

ありがとう

レネゲードロブ

誰かが同じことをした後、私は調べて解決策を見つけました。

    <!DOCTYPE html>
    <html>

    <head>
    <title>Move to Click Position</title>
    <style type="text/css">
    body {
        background-color: #FFF;
        margin: 30px;
        margin-top: 10px;
    }
    #contentContainer {
        width: 614px;
        height: 864px;
        border: 5px black solid;
        overflow: hidden;
        background: url(Sample-Contract-Agreement-Letter.jpg) top left no-repeat;
        background-color: #F2F2F2;
        cursor: pointer;
    }
    #thing {
        position: relative;
        left: 50px;
        top: 50px;
        transition: left .5s ease-in, top .5s ease-in;
    }
    </style>
    </head>

    <body>
    <div id="contentContainer">
    <img id="thing" src="//www.kirupa.com/images/smiley_red.png">
</div>

<script src="//www.kirupa.com/prefixfree.min.js"></script>
<script>
    var theThing = document.querySelector("#thing");
    var container = document.querySelector("#contentContainer");

    container.addEventListener("click", getClickPosition, false);

    function getClickPosition(e) {
        var parentPosition = getPosition(e.currentTarget);
        var xPosition = e.clientX - parentPosition.x - (theThing.clientWidth / 2);
        var yPosition = e.clientY - parentPosition.y - (theThing.clientHeight / 2);
        document.getElementById('myField1').value = xPosition;
        document.getElementById('myField2').value = yPosition;
        theThing.style.left = xPosition + "px";
        theThing.style.top = yPosition + "px";
    }

    // Helper function to get an element's exact position
    function getPosition(el) {
      var xPos = 0;
      var yPos = 0;

      while (el) {
        if (el.tagName == "BODY") {
          // deal with browser quirks with body/window/document and page scroll
          var xScroll = el.scrollLeft || document.documentElement.scrollLeft;
          var yScroll = el.scrollTop || document.documentElement.scrollTop;

          xPos += (el.offsetLeft - xScroll + el.clientLeft);
          yPos += (el.offsetTop - yScroll + el.clientTop);
        } else {
          // for all other non-BODY elements
          xPos += (el.offsetLeft - el.scrollLeft + el.clientLeft);
          yPos += (el.offsetTop - el.scrollTop + el.clientTop);
        }

        el = el.offsetParent;
      }
      return {
        x: xPos,
        y: yPos
      };
    }
    </script>

    <form action="test.php" method="post">


    <input type=”hidden” value="" id="myField1" name="myField1">
    <input type=”hidden” value="" id="myField2" name="myField2">

    <input type="submit" value="Submit">

    </form>
    </body>
    </html>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Javaで私のウィンドウの外でマウスクリック座標を取得する方法

分類Dev

OpenOfficeBASICマクロでマウスクリックからドキュメント座標を取得する方法

分類Dev

キャンバスをクリックしたときにマウスの座標を取得する

分類Dev

Python:matplotlib.canvasを使用してマウスクリックで座標を取得する方法

分類Dev

マウスクリック座標で画像ボックスに長方形を描画する方法

分類Dev

アニメーション中にOpenGLでマウスクリック座標を取得しますか?

分類Dev

SDKで初めて右クリックしてマウス座標を取得する

分類Dev

Tkinterはクリック時にマウス座標を取得し、それらを変数として使用します

分類Dev

マウスクリックイベントの座標をmatplotlibに保存する

分類Dev

Webサイト全体でマウスクリック座標を傍受する

分類Dev

クリックしたマウスの座標を取得するにはどうすればよいですか(数学計算のみが必要です)

分類Dev

canvas要素でのマウスクリックの座標を取得するにはどうすればよいですか?

分類Dev

ウィンドウのサイズを変更するときにマウスクリックを使用して画像の座標を取得するにはどうすればよいですか?

分類Dev

マウス座標でクリックするとムービークリップを再生します

分類Dev

ボタンをクリックするとマウスの座標を取得します

分類Dev

マウスクリックでmatplotlibプロット図pythonの座標を取得します

分類Dev

テキスト座標のtextareaでマウスクリックの場所を取得します

分類Dev

OpenGLは、C ++でのマウスクリックでカーソル座標を取得します

分類Dev

検出された面のバウンディングボックスのxy座標を取得する方法

分類Dev

マウスの座標を変数として取得するにはどうすればよいですか?

分類Dev

three.jsでマウスクリックポイントの3D座標を取得します

分類Dev

Unityでクリックしてヘクスマップから座標を取得する方法

分類Dev

マウス座標でクリックするとムービークリップがマウスクリックを防ぎます

分類Dev

Windowsランタイムアプリ(Windows 8.1)でArcGIS EsriMapをマウスでタップ/クリックしてGPS座標を取得する

分類Dev

マウスopencvなしで目的の座標をクリックします

分類Dev

クリックイベントからX°Y'Z "形式(XY == 10進数ではない)で座標を取得する方法

分類Dev

xy座標に基づいてJavascriptでプログラムでボタンをクリックする方法

分類Dev

DIV内のキャンバスでクリック座標を取得する

分類Dev

WebBrowserドキュメントでのマウスクリック座標の取得

Related 関連記事

  1. 1

    Javaで私のウィンドウの外でマウスクリック座標を取得する方法

  2. 2

    OpenOfficeBASICマクロでマウスクリックからドキュメント座標を取得する方法

  3. 3

    キャンバスをクリックしたときにマウスの座標を取得する

  4. 4

    Python:matplotlib.canvasを使用してマウスクリックで座標を取得する方法

  5. 5

    マウスクリック座標で画像ボックスに長方形を描画する方法

  6. 6

    アニメーション中にOpenGLでマウスクリック座標を取得しますか?

  7. 7

    SDKで初めて右クリックしてマウス座標を取得する

  8. 8

    Tkinterはクリック時にマウス座標を取得し、それらを変数として使用します

  9. 9

    マウスクリックイベントの座標をmatplotlibに保存する

  10. 10

    Webサイト全体でマウスクリック座標を傍受する

  11. 11

    クリックしたマウスの座標を取得するにはどうすればよいですか(数学計算のみが必要です)

  12. 12

    canvas要素でのマウスクリックの座標を取得するにはどうすればよいですか?

  13. 13

    ウィンドウのサイズを変更するときにマウスクリックを使用して画像の座標を取得するにはどうすればよいですか?

  14. 14

    マウス座標でクリックするとムービークリップを再生します

  15. 15

    ボタンをクリックするとマウスの座標を取得します

  16. 16

    マウスクリックでmatplotlibプロット図pythonの座標を取得します

  17. 17

    テキスト座標のtextareaでマウスクリックの場所を取得します

  18. 18

    OpenGLは、C ++でのマウスクリックでカーソル座標を取得します

  19. 19

    検出された面のバウンディングボックスのxy座標を取得する方法

  20. 20

    マウスの座標を変数として取得するにはどうすればよいですか?

  21. 21

    three.jsでマウスクリックポイントの3D座標を取得します

  22. 22

    Unityでクリックしてヘクスマップから座標を取得する方法

  23. 23

    マウス座標でクリックするとムービークリップがマウスクリックを防ぎます

  24. 24

    Windowsランタイムアプリ(Windows 8.1)でArcGIS EsriMapをマウスでタップ/クリックしてGPS座標を取得する

  25. 25

    マウスopencvなしで目的の座標をクリックします

  26. 26

    クリックイベントからX°Y'Z "形式(XY == 10進数ではない)で座標を取得する方法

  27. 27

    xy座標に基づいてJavascriptでプログラムでボタンをクリックする方法

  28. 28

    DIV内のキャンバスでクリック座標を取得する

  29. 29

    WebBrowserドキュメントでのマウスクリック座標の取得

ホットタグ

アーカイブ