0

これは意味があると思います。以下は私のGoogleマップ用のコードですが、それはうまくいっています(最もクリーンではありませんが、機能しています)。私のために情報ボックスを開く地図の外にHTMLリンクを作成するにはどうすればいいですか?リンクを使用してGoogleマップ情報ボックスを開く

<a href="#map" onclick="openInfo(2)">More Info</a> 

をし、それが火曜日ものであろうマーカー2のための情報ボックスを開きます:たとえば、私が行うことができるようにしたいです。これが理にかなってほしい。

<script> 
jQuery(function($) { 
// Asynchronously Load the map API 
var script = document.createElement('script'); 
script.src = "//maps.googleapis.com/maps/api/js?sensor=true&callback=initialize&key=APIKEY"; 
document.body.appendChild(script); 
}); 
var gmarkers = []; 
function initialize() { 
var map; 
var bounds = new google.maps.LatLngBounds(); 
var mapOptions = { 
    mapTypeId: 'roadmap' 
}; 

// Display a map on the page 
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); 
map.setTilt(45); 

// Multiple Markers 
var markers = [ 

     ['1', LAT,LONG],  
     ['2', LAT,LONG],  

]; 


// Info Window Content 
var infoWindowContent = [ 

     ['<strong>Monday - 7:00pm</strong>'],  
     ['<strong>Tuesday - 6:00pm</strong>'], 
]; 

// Display multiple markers on a map 
var infoWindow = new google.maps.InfoWindow(), marker, i; 

// Loop through our array of markers & place each one on the map 
for(i = 0; i < markers.length; i++) { 
    var position = new google.maps.LatLng(markers[i][1], markers[i][2]); 
    bounds.extend(position); 
    marker = new google.maps.Marker({ 
     position: position, 
     map: map, 
     title: markers[i][0] 
    }); 
    // Allow each marker to have an info window  
    google.maps.event.addListener(marker, 'click', (function(marker, i) { 
     return function() { 
      infoWindow.setContent(infoWindowContent[i][0]); 
      infoWindow.open(map, marker); 
     } 
    })(marker, i)); 

    // Automatically center the map fitting all markers on the screen 
    map.fitBounds(bounds); 
} 



// Override our map zoom level once our fitBounds function runs (Make sure it only runs once) 
var boundsListener = google.maps.event.addListener((map), 'bounds_changed', function(event) { 
    this.setZoom(11); 
    google.maps.event.removeListener(boundsListener); 
}); 
var opt = { minZoom: 9, maxZoom: 12 }; 
map.setOptions(opt); 

} 
</script> 
+0

Open Info Windowこの投稿はあなたを助けるでしょう:https://stackoverflow.com/questions/18333679/google-maps-open-info-window-after-click-on-a -link – VA79

+0

これは動作していないようです。次のエラーが表示されます。 VM10743:1 Uncaught ReferenceError:マーカーが定義されていません –

答えて

0

あなたは...あなたは、マーカーを使用してマーカーを作成していることをあなたの実際のマーカーを渡す必要があります=新しいgoogle.maps.Marker({...あなたは、あなたがターゲットとしたいものを保管しなければならず、それをonclickトリガー機能に渡してください。

+0

私はそれらに割り当てられたカスタムIDを使用してそれらのいずれかをターゲットできます例、私にマーカーがある場合ID 34の場合、その情報ウィンドウに対してマーカー[34]を呼び出せるようにしたいと考えています。それは理にかなっていますか?私はマーカーの自動0,1,2,3の番号付けに頼ることは望まない。 –

関連する問題