Google マップに少し問題があります。問題はループに関係していることを知っており、問題に取り組むためのより良い方法に関する情報が欲しい
ですから、あなたに絵を描いてもらいましょう。lat/lng (データベースから取得) を介して場所を表示するマップがあります。これらのマーカーには、クリックして情報を表示できる addlistener が添付されています。問題は、マーカーをクリックすると、ツールチップがマップに最後に追加されたアイテムにフォーカスし、そのマーカーの情報を表示することです。 . これはばかげています!(ラッパーではありません)
皆さんからの賢明なアドバイスの前ではなく、ハンマーを手に入れてマップを元の形に戻したいと思います。以下はコーディングです。
function initialize() {
var mapOptions = {
center: new google.maps.LatLng([REMOVED], [REMOVED]),
zoom: 11,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
// RAZOR BEGIN
@foreach (var item in Model) {
<text>
var markerlatLng = new google.maps.LatLng(@(item.latitude), @(item.longitude));
var title = '@(item.address1)';
var description = '@(item.averageRating)';
var contentString = '<h3>' + title + '</h3>' + '<p>' + description + '</p>'
var infowindow = new google.maps.InfoWindow({
content: contentString
});
var marker = new google.maps.Marker({
position: markerlatLng,
title: title,
map: map,
draggable: false
});
google.maps.event.addListener(marker, 'click', function () {
map.setZoom(15);
map.setCenter(marker.getPosition());
//open a div on the mouse location?
infowindow.open(map, marker);
});
</text>
}
//RAZOR END
ご覧のとおり、モデルをループして、マップに配置する関連情報を取得します。
リスナーをかみそりループの外側に配置しようとしましたが、これはまったく機能しません。
いつものように、Stackoverflow さん、ご協力をお願いします。
PS。今回はクッキーはありません。