我正在使用Google Maps API v2(出于某种原因, 是v2)和jQuery UI 1.8.6(以及jQuery 1.4.1)。
情况如下: 我在模态对话框中有一张地图。
问题是: 当我点击信息“气球”的阴影并拖动地图时,它不会停止拖动。
我真的不知道应该提供哪种代码,所以,如果您希望我专门提供一些代码,请告诉我。
function createMarker(latitude, longitude, num, color, id_local) {
var iconOptions = {};
iconOptions.width = 32;
iconOptions.height = 32;
iconOptions.primaryColor = ''+color;
iconOptions.label = ''+num;
iconOptions.cornerColor = "#82c4e8";
iconOptions.strokeColor = "#000000";
var newIcon = MapIconMaker.createLabeledMarkerIcon(iconOptions);
//
var point = new GLatLng(latitude,longitude,0);
//
var marker = new GMarker(point, {
icon: newIcon
});
var html = $('#info_mapa_'+id_local).html();
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
答案 0 :(得分:0)
DEMO:http://so.devilmaycode.it/google-maps-api-v2-jquery-ui-dialog-non-stoppable-dragging-problem/
PSEUDO CODE:
JS:
$(function() {
$("#j-dialog").dialog({
resizable: false,
width: 500,
height: 400,
open: function() {
initialize();
}
});
});
function initialize() {
var latlng = new google.maps.LatLng( - 34.397, 150.644);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map($("#map_canvas")[0], myOptions);
var contentString = $('#map-info').text();
var infowindow = new google.maps.InfoWindow({
content: contentString
});
var newIcon = 'http://cdn2.iconfinder.com/data/icons/oxygen/48x48/actions/note2.png';
var marker = new google.maps.Marker({
icon: newIcon,
position: latlng,
map: map,
title: "Hello World!"
});
google.maps.event.addListener(marker, 'click',
function() {
infowindow.open(map, marker);
});
}
CSS:
<style>#map_canvas { margin:0 auto; width:450px; height: 340px }</style>
HTML:
<div title="google maps inside jquery dialog" id="j-dialog">
<div id="map_canvas">
</div>
</div>
希望这个帮助
<强>参考:强>
答案 1 :(得分:0)
我的老板决定花一天时间迁移到v3并摆脱这个愚蠢的问题。谢谢大家。