はじめまして。
google maps apiのGeocoderを使って住所を入力するとwebページ上にその住所を中心とした
地図を表示させたいのですがいまいちうまくいきません。
ソースコードは以下の通りです。
html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt …
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css">
html, body { height: 100%; }
</style>
<script type="text/javascript"
src="http://maps.google.com/maps/api/js?sensor=false" …
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.5.0");
</script>
<script type="text/javascript" src="addressmaps.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#button").click(function() {
var address = $("#address").val(); // input要素の値を取得
drawMap(address); // 地図を生成する
});
});
</script>
<title>指定した住所を中心とする地図</title>
</head>
<body>
<p>
<input id="address" type="text" value="東京都世田谷区新町3丁目" size="50" />
<button id="button">地図を作る</button>
</p>
<div id="map_canvas" style="width:100%; height:90%;"></div>
</body>
</html>
javascript
// geocodeのための、地図を生成するコールバック関数
function createMap(result, status) {
if (status == google.maps.GeocoderStatus.OK) {
//console.log(result);
var myPosition = result[0].geometry.location;
var myOptions = {
zoom : 14,
center : myPosition,
mapTypeId : google.maps.MapTypeId.ROADMAP
};
var myMap = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
}
// 住所から位置を取得し、地図を生成する
function drawMap(myAddress) {
// 住所から位置を取得するためのオブジェクト
var geocoder = new google.maps.Geocoder();
// 住所から位置を取得し、その結果を使って地図を生成する
geocoder.geocode( {
address : myAddress
}, createMap); // コールバック関数createMap()は上で定義されている
}
特にエラーはでないのですが地図が表示されません。
詳しい方、ご教授ください
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
詳しくはありませんが、回答がないみたいなので…
前回のご質問と同様に、ちゃんとセットアップあれれば動作すると思います。
それなので、スクリプトの読込みなどのトラブルがないか、あるいはjavascriptがオフに設定されていないかなどをチェックしてみてください。
あるいは、あまり一般的でないブラウザをお使いになっているとか…(google apiが動作しないとか?)
内容的にはまったく同じですが、jQueryをはずし、内部スクリプトで記した例を…
(コピペで動かない場合は、スクリプトオフやブラウザが特殊とかの可能性大です)
*仕様を少し変えています。
*初期画面でデフォルトの地図を表示し、後は指定された位置を表示するようにしています。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="ja">
<head><title>sample</title>
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<style type="text/css">
html, body { height: 100%; }
</style>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false" …
</head>
<body>
<p>
<input id="address" type="text" value="東京都世田谷区新町3丁目" size="50">
<button id="button">地図を作る</button>
</p>
<div id="map_canvas" style="width:100%; height:90%;"></div>
<script type="text/javascript">
(function(){
var myMap = new google.maps.Map(document.getElementById("map_canvas"), {
zoom : 14,
center : new google.maps.LatLng(35.633, 139.647),
mapTypeId : google.maps.MapTypeId.ROADMAP
});
var geocoder = new google.maps.Geocoder();
function drawMap(){
var val = document.getElementById("address").value;
if(val != ""){
geocoder.geocode({address: val}, function(results, status){
if(status == google.maps.GeocoderStatus.OK)
myMap.setCenter(results[0].geometry.location);
else
alert("位置取得に失敗しました。\n(status): " + status);
});
}
}
google.maps.event.addDomListener(document.getElementById("button"), "click", drawMap, false);
})();
</script>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaScriptでの実装
-
SCRIPT5007: 未定義または NULL...
-
onloadで2つの関数を設定したい
-
<a href="#" …>の意味を教えて...
-
<div>のタッチ状態を維持したま...
-
JW FLV Playerのプレイリスト連...
-
「jquery.csv2table.js」から生...
-
ページを訪問者にたった一度だ...
-
window.openでフルスクリーン表...
-
javascript内で外部ファイルを...
-
processing
-
bodyにidをつける理由は何ですか?
-
<object data="">の挙動について
-
pythonのWebスクレイピングでfi...
-
変数の代入値を外部の.txtファ...
-
外部読み込みで動かないときの...
-
macでjavascriptを記述するには...
-
プルダウンメニューを別ファイ...
-
複数のiframeの読み込みについて
-
iframe子ページから親ページへ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
getElementsByNameで要素が取得...
-
JavaScriptでiframeの内容を「...
-
function の return 値を表示し...
-
SCRIPT5007: 未定義または NULL...
-
ボタンのID名を取得するには?
-
JavaScript でキーを送る
-
フォーカス移動抑止について
-
乱数を一定時間毎に表示させた...
-
ボタンを押してテキストエリア...
-
bodyタグのfocus
-
JavaScriptでのEnterキーとAlt+...
-
自動ジャンプでフォームデータ...
-
一定時間画像を表示させ、その...
-
リンク移動先のURLを取得
-
idHOGEで取得したinnerText(数...
-
「オブジェクトを指定してくだ...
-
html javascript 作った配列を...
-
キーを押している間の時間を計...
-
チェックボックスの選択パター...
-
Operaでのobjectタブの高さ変更
おすすめ情報