GoogleMapsAPIでマーカーをストリートビューで表示させたい
GoogleMapsAPIでマーカーを追加し移動もできるようにしましたが、
このマーカーのストリートビューを別窓で表示させる方法を教えていただけないでしょうか
マーカーは人型のアイコンではなく、追加したマーカーです
よろしくお願いします
以下、ソースです
///////////////////////////////////////////////
<script type="text/javascript">
function initialize() {
var map = new google.maps.Map(
document.getElementById("gMap"),{
zoom : 16,
center : new google.maps.LatLng(35.688272,139.696459),
mapTypeId : google.maps.MapTypeId.ROADMAP,
streetViewControl : true
}
);
var marker = new google.maps.Marker({
position: new google.maps.LatLng(35.688272,139.696459),
map: map,
draggable : true
});
}
</script>
<style>
#gMap{
width: 900px;
height: 500px;
}
#View{
width: 900px;
height: 300px;
border: 1px solid #000; /* この枠線内にストリートビューを表示させたい */
}
</style>
</head>
<body onload="initialize()">
<div id="gMap"></div>
<div id="View"></div>
</body>
///////////////////////////////////////////////
No.1
- 回答日時:
ストリートビューって、使ってみたことはほとんどありませんが…
マップのデフォルトの人型を利用した方が、ビューの方向や既撮影の道路(青く表示される)などの機能がそのまま利用できるので便利ではないでしょうか?
あえて違うマーカーを利用する理由が見つからないので、人型を利用する例を
(全角空白は半角に)
<!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">
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false" …
<style type="text/css">
#gMap{ width: 900px; height: 500px; }
#View{ width: 900px; height: 300px; border: 1px solid #000; }
</style>
<script type="text/javascript">
function initialize(){
var latlng = new google.maps.LatLng(35.688272,139.696459);
var map = new google.maps.Map(document.getElementById("gMap"),{
zoom : 16,
center : latlng,
mapTypeId : google.maps.MapTypeId.ROADMAP,
streetViewControl : true
});
var view = new google.maps.StreetViewPanorama(document.getElementById("View"),{
position : latlng,
pov : {heading:0, pitch:0}
});
map.setStreetView(view);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="gMap"></div>
<div id="View"></div>
</body>
</html>
どうしても別のマーカーにする場合は、適当にアレンジしてください。
google mapのapiに関しては、かなり詳しく説明されていますので、たいていの情報は以下から入手できます。
https://developers.google.com/maps/documentation …
この回答への補足
回答ありがとうございます
人型のストリートビューとは別に、
今回はあえてマーカーからストリートビューを
表示させたくご質問させていただきました
js初心者のためアレンジできるかわかりませんが、
教えていただいたURL等を参考にしてみます!
ありがとうございました
No.2
- 回答日時:
ANo1です。
あくまでも独自マーカーにこだわるのであれば、マップとストリートビューを連動させる際には、それぞれの移動イベントを拾って逐次他方に反映させてあげるる必要があると思われます。
また、ビューの無い地点が指定された際の処理(デフォルトの表示がどうなるのか調べていませんが)についても考慮する必要があるかも知れません。
>js初心者のためアレンジできるかわかりませんが・・・
初心者の度合いにもよりますが、多少ややこしいかも知れません。
頑張ってください。
No.3ベストアンサー
- 回答日時:
提示されたソースコードの修正ではなく、自分で作成したものですが、
参考になりそうでしたら、ご利用ください。
尚、このページの単純コピペだと、変なところで改行されて動作不良と
なることがあるようなので、適宜修正してください。
////////// 以下ソース
<!DOCTYPE html><html><head><title>サンプル</title>
<meta http-equiv='Content-Type' content='text/html; charset=shift_jis'>
<script type='text/javascript' src='http://maps.google.com/maps/api/js?v=3.13&sensor …
<script type='text/javascript'>
var LatLng,mOptions,pOptions,map,pano;
function initialize(){
LatLng = new google.maps.LatLng(35.681382, 139.766084); //位置の初期値
mOptions = {
zoom: 16, center: LatLng, mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('mcanvas'), mOptions);
pOptions = {
position: LatLng, pov: {heading: 0, pitch: 0, zoom: 1.34 } //方角、仰角、ズームの初期値
};
pano = new google.maps.StreetViewPanorama(document.getElementById('pcanvas'), pOptions);
marker = new google.maps.Marker({
map: map, position: LatLng, draggable: true
});
google.maps.event.addListener(marker, 'position_changed', function(){
LatLng = marker.getPosition();
pano.setPosition(LatLng);
});
}
</script></head>
<body onload='initialize()'>
<div id='mcanvas' style='width:640px; height:240px'></div>
<div id='pcanvas' style='width:640px; height:240px'></div>
</body></html>
追記:
・APIはバージョン3.1Xを使用(私は3.0のマーカーが嫌いなので)
・初期位置は東京駅ですが、ビューがないので空白になります
ご回答ありがとうございます
作成していただいたソースでできました!
こんなかっこいいマーカーもあったんですね
大変勉強になりました
是非使用させていただきます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavascriptでXSSの脆弱性への対...
-
CSSでreadonlyの機能はあり...
-
ホームページ上の文字の色を変...
-
改行をしたいが、<br>と...
-
Q&A掲示板の入力フォームに文字...
-
確認ダイアログを次からは表示...
-
フォームで「パスワード(確認...
-
javascriptで複数の表示・非表...
-
もしかして
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
CloseとDisposeの違い
-
VBAでループ内で使う変数名を可...
-
エクセルVBAで、MsgBox やInput...
-
Do~Loopした回数をカウントしたい
-
switch の範囲指定
-
VBAでセルに値が入力されるまで...
-
メルカリのメルカードで買い物...
-
ImageMagickでgif画像の一部が...
-
【Excel】特定の文字を含むセル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Q&A掲示板の入力フォームに文字...
-
JavascriptでDom XSSの脆弱性対...
-
【JavaScript】検索がヒットし...
-
CSSでreadonlyの機能はあり...
-
JavascriptでXSSの脆弱性への対...
-
formのsubmitを押すとモーダル...
-
確認ダイアログを次からは表示...
-
JavascriptのHTMLクラス表示に...
-
特定の条件のHTML要素を一括で...
-
jQueryでのドラッグアンドドロ...
-
javascriptで複数の表示・非表...
-
jqueryを使ったスムーススクロ...
-
jqueryアコーディオンの上部の...
-
JavaScriptのdiv.style属性の変...
-
2回目以降のページロード時には...
-
javascriptのエラーで質問です。
-
改行をしたいが、<br>と...
-
クリックすると、色が変わるよ...
-
jQueryのCSSで値に変数を使う方法
-
動画の上に広告をオーバーレイ...
おすすめ情報