私のプロジェクトでは、マップ内をクリックするたびに、xとyのテキストを入力するテキストボックスを入力したいと思います。私はこの本標準コードで私の画面上に表示座標を持っている: openlayer 3のマップから変数を取得する
var mousePositionControl = new ol.control.MousePosition({
className: 'custom-mouse-position',
target: document.getElementById('location'),
coordinateFormat: ol.coordinate.createStringXY(5),
undefinedHTML: ' '
});
はそう私は考えた:私はxの変数としてmousePositionControlを使用し、y座標場合、私はテキストボックスでこれを取得します。だから私はこれを試してみました:
map.on('click', function() {
document.getElementById("coördinates").value = mousePositionControl;
});
が、私は、テキストボックスに取得結果がこれです:[オブジェクトのオブジェクト]
は、誰かがこの問題で私を助けることはできますか?
文字列表現は、 'ol.control.MousePosition'は「[オブジェクトのオブジェクト]」ので、コードはあなたがすることを求めているまさにありません。 'click'ハンドラは、既にクリックされたピクセルの座標を含む' event'オブジェクトを受け取りますので、コントロールを必要としません。 – kryger
は 'x'と' y'を示す 'location'要素です。要素 'coördinates'の' x'と 'y'をもう一度取得する必要があるのはなぜですか? – Nurlan
補足として、 "coördinates"と "cooperate"は英語で "coordinate"と "cooperate"と書かれています。 –