私は多くの類似した記事を見てきましたが、明らかなものは見当たりませんでしたが、私はすべてを試しました。私はそれを修正しようとしているW3の学校のコードをコピーして貼り付けました。 index.htmlのボタンを使用して、ユーザーの緯度と経度を取得し、それを表示します(これは学校のプロジェクトでもあり、要件の1つです)。それから私はまた、ユーザーの場所の地図を取得し、それを表示する必要があります。 私のボタンをクリックすると、私の場所には左上のウィンドウ(Chrome btwを使用)でプロンプトが表示され、許可と言います。私のコードはポップアップしますが、マップは表示されません。何もポップアップすることはできません。どこにいても大した空白がありません。私は、関連するコードとloc.jsファイルを持つindex.htmlをコピー&ペーストします。 私はGoogleから無料で入手できる鍵を持っていますが、修正されませんでした。JavaScript Google Maps APIマップが表示されていませんか?
Index.htmlと
<script src = "loc.js"></script>
<input type ="button" value="Get Location" onclick="getLocation(); getMap();">
<div id="spot"></div>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDEiqN2L1odkK645Il8bBVCDqatth6aZyU&callback=getMap"></script>
<div id="userMap" style="width:100%;height:400px;"></div>
loc.js
function getLocation() {
\t var userSpot = document.getElementById("spot");
\t //Using navigator, retrieves the users current location (works better with mobile phones)
if (navigator.geolocation) { //If the user says no (this prompts the user if they want their location known)
\t \t \t \t \t \t \t \t //then it'll go ahead and retrieve their location, if not prompts error message.
navigator.geolocation.getCurrentPosition(showLocation);
} else {
userSpot.innerHTML = "Geolocation is not supported by this browser type.";
}
}
function showLocation(position) {
\t var userSpot = document.getElementById("spot");
\t //Retrieves latitude and longitude using this second function called in the first
userSpot.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
function getMap() {
\t var currPosLat = position.coords.latitude;
\t var currPosLng = position.coords.longitude;
\t
\t var mapOptions = {
\t center: new google.maps.LatLng(-34.397, 150.644),
\t zoom:12,
\t };
\t
\t var map = new google.maps.Map(document.getElementById("userMap"), mapOptions);
}
間違ったコードを投稿したので、@Ben Johnが投稿した解決策が正しいことを意味します。地図は指定された緯度と経度で働いた。しかし、私はマップがユーザーの場所を中心にしていることを確認するはずだったことを忘れていました。だから私はそれらの変数を持っているので、私のエラーは、それらの変数が機能していないことと関係しているようです。 –
センター:新しいgoogle.maps.LatLng(currPosLat、currPosLng)、 私が達成しようとしているものです。また何らかの理由で、緯度と経度のいずれも表示されず、何とか壊れてしまいます。私は本当にこれを強調している、それはすでに遅れているので、私の時間を取るかもしれない。 getLocation()とgetMap()はもう動作していないようです。誰かが助けることができれば、本当に感謝します。 –