// ユーザーの端末がGeoLocation APIに対応しているかの判定 // 対応している場合 if( navigator.geolocation ) { // 現在地を取得 navigator.geolocation.getCurrentPosition( // [第1引数] 取得に成功した場合の関数 function( position ) { var map;//全体マップ var mk;//現在置いているマーカー var mk_array = [];//マーカー消去用の配列 // 取得したデータの整理 var data = position.coords ; // データの整理 var lat = data.latitude ; var lng = data.longitude ; var alt = data.altitude ; var accLatlng = data.accuracy ; var accAlt = data.altitudeAccuracy ; var heading = data.heading ; //0=北,90=東,180=南,270=西 var speed = data.speed ; // アラート表示 // alert( "あなたの現在位置は、\n[" + lat + "," + lng + "]\nです。" ) ; // HTMLへの書き出し document.getElementById( 'comment' ).innerHTML = 'Geolocation API を利用して現在位置を取得しています。
' ; document.getElementById( 'result' ).innerHTML = '

緯度:' + lat + '
経度:' + lng + '
精度:' + accLatlng + 'm

' ; var zoomnum; if ( accLatlng < 100 ) { zoomnum = 17; } else if ( accLatlng < 300 ) { zoomnum = 16; } else if ( accLatlng < 500 ) { zoomnum = 15; } else if ( accLatlng < 1000 ) { zoomnum = 14; } else if ( accLatlng < 2000 ) { zoomnum = 13; } else if ( accLatlng < 5000 ) { zoomnum = 12; } else if ( accLatlng < 10000 ) { zoomnum = 11; } else { zoomnum = 10; } // 位置情報 var latlng = new google.maps.LatLng( lat , lng ) ; // Google Mapsに書き出し map = new google.maps.Map( document.getElementById( 'map-canvas' ) , { zoom: zoomnum , // ズーム値 mapTypeId: google.maps.MapTypeId.ROADMAP, center: latlng , // 中心座標 [latlng] } ) ; // マーカーの新規出力 mk = new google.maps.Marker( { map: map , position: latlng , } ) ; mk.setMap(map); mk_array.push(mk); if (window.opener && !window.opener.closed) { var oyaIdo = window.opener.document.getElementById('id_ido'); //値をセットするオブジェクトを取得 if(oyaIdo != null){ //値をセットする先が存在する場合は値をセットする oyaIdo.value = lat; } var oyaKeido = window.opener.document.getElementById('id_keido'); //値をセットするオブジェクトを取得 if(oyaKeido != null){ //値をセットする先が存在する場合は値をセットする oyaKeido.value = lng; } } google.maps.event.addListener(map, 'click', mylistener); function mylistener(event) { document.getElementById("result").innerHTML = '

緯度:' + event.latLng.lat() + '
経度:' + event.latLng.lng() + '

'; var clicklatlng = new google.maps.LatLng(event.latLng.lat(),event.latLng.lng()); mk = new google.maps.Marker({ map:map, position: clicklatlng, }); mk.setMap(map); mk_array.push(mk); if (window.opener && !window.opener.closed) { var oyaIdo = window.opener.document.getElementById('id_ido'); //値をセットするオブジェクトを取得 if(oyaIdo != null){ //値をセットする先が存在する場合は値をセットする oyaIdo.value = event.latLng.lat(); } var oyaKeido = window.opener.document.getElementById('id_keido'); //値をセットするオブジェクトを取得 if(oyaKeido != null){ //値をセットする先が存在する場合は値をセットする oyaKeido.value = event.latLng.lng(); } } //console.log(mk_array.length-1); for(var i=0;i緯度:' + lat + '
経度:' + lng + '

' ; var zoomnum = 7; // 位置情報 var latlng = new google.maps.LatLng( lat , lng ) ; // Google Mapsに書き出し map = new google.maps.Map( document.getElementById( 'map-canvas' ) , { zoom: zoomnum , // ズーム値 mapTypeId: google.maps.MapTypeId.ROADMAP, center: latlng , // 中心座標 [latlng] } ) ; // マーカーの新規出力 mk = new google.maps.Marker( { map: map , position: latlng , } ) ; mk.setMap(map); mk_array.push(mk); if (window.opener && !window.opener.closed) { var oyaIdo = window.opener.document.getElementById('id_ido'); //値をセットするオブジェクトを取得 if(oyaIdo != null){ //値をセットする先が存在する場合は値をセットする oyaIdo.value = lat; } var oyaKeido = window.opener.document.getElementById('id_keido'); //値をセットするオブジェクトを取得 if(oyaKeido != null){ //値をセットする先が存在する場合は値をセットする oyaKeido.value = lng; } } google.maps.event.addListener(map, 'click', mylistener); function mylistener(event) { document.getElementById("result").innerHTML = '

緯度:' + event.latLng.lat() + '
経度:' + event.latLng.lng() + '

'; var clicklatlng = new google.maps.LatLng(event.latLng.lat(),event.latLng.lng()); mk = new google.maps.Marker({ map:map, position: clicklatlng, }); mk.setMap(map); mk_array.push(mk); if (window.opener && !window.opener.closed) { var oyaIdo = window.opener.document.getElementById('id_ido'); //値をセットするオブジェクトを取得 if(oyaIdo != null){ //値をセットする先が存在する場合は値をセットする oyaIdo.value = event.latLng.lat(); } var oyaKeido = window.opener.document.getElementById('id_keido'); //値をセットするオブジェクトを取得 if(oyaKeido != null){ //値をセットする先が存在する場合は値をセットする oyaKeido.value = event.latLng.lng(); } } //console.log(mk_array.length-1); for(var i=0;i