我目前正在爲一家雜貨店的商店定位器工作。他們的網站是在Drupal中構建的,但我從零開始編碼商店定位器,而不是使用Drupal模塊。谷歌地圖infowindow無法打開/顯示:無
到目前爲止,一切似乎很好地結合在一起,但我無法弄清楚爲什麼當有人點擊標記時我的信息窗口不顯示。在做了一些研究並嘗試了不同的東西之後,下面的代碼似乎有些迴應:點擊標記時,地圖重新集中以爲泡泡騰出空間,但泡泡從不顯示。
更新:
一些更多的測試後,我發現,泡沫確實形成。該標記在那裏,但由於某種原因谷歌增加了一個顯示:無內聯樣式到它的容器點擊。現在我想知道如何防止這種情況?
任何想法/幫助非常感謝。
(function ($) {
Drupal.behaviors.storelocator = {
attach: function (context, settings) {
var map;
var markers_array = [];
google.maps.event.addDomListener(window, 'load', function() {
var mapOptions = {
position: new google.maps.LatLng(41.030, -73.411),
zoom: 10,
maxZoom: 16,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var bounds = new google.maps.LatLngBounds();
$.get('/storelocator/storexml', function(xml) {
$(xml).find('marker').each(function() {
var banner_name = $(this).attr('name');
var address = $(this).attr('address');
var distance = parseFloat($(this).attr('distance'));
var latlng = new google.maps.LatLng(parseFloat($(this).attr('lat')), parseFloat($(this).attr('lng')));
createMarker(map, latlng, banner_name, address);
bounds.extend(latlng);
map.fitBounds(bounds);
});
});
});
function createMarker(map, latlng, banner_name, address) {
var icon_image = {
url: '/sites/default/modules/storelocator/images/' + banner_name + '.png',
size: new google.maps.Size(25, 30),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(12, 30)
}
var icon_shadow = {
url: '/sites/default/modules/storelocator/images/shadow.png',
size: new google.maps.Size(40, 30),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(12, 30)
}
var clickable_area = {
coord: [1, 1, 1, 30, 25, 30, 30, 1],
type: 'poly'
}
var marker = new google.maps.Marker({
map: map,
position: latlng,
shadow: icon_shadow,
icon: icon_image,
shape: clickable_area,
title: address,
html: '<strong>' + banner_name + '</strong><br/>' + address
});
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent(this.html);
infoWindow.open(map, this);
});
markers_array.push(marker);
}
}
};
}(jQuery));
你的標記在哪裏?泡泡窗口在哪裏?我在這裏看不到它? – 2013-05-11 17:03:34
你得到了哪些javascript錯誤?你可以提供一個jsfiddle或鏈接到一個地圖,表現出這個問題? – geocodezip 2013-05-11 17:11:10
根本沒有javascript錯誤。由於該項目在VPN後面,因此我無法提供鏈接。 – Zorrya 2013-05-11 17:41:42