当我使用jquery-ui-map创建一个谷歌地图实例这样的目标一个jQuery UI的地图生成的地图:如何使用信息框
$('#CHMap').gmap({
mapTypeControl : false
}).bind('init', function(evt, map) {
log("Map initilised");
});
然后在别处剧本我使用InfoBox添加一些充满数据风格能信息框从地理定位服务拉回,像这样:
var boxText = document.createElement("div");
var ib = new InfoBox(myOptions); //myOptions can be ignored for this example
$.each(data, function(name, value) {
$('#CHMap').gmap('addMarker', {
id:value['YourId'],
'position': value['Latitude']+','+value['Longitude'],
'bounds': true,
'icon': '/img/gicon.png'
}).click(function() {
boxText.innerHTML = "hello";
ib.setContent(boxText);
ib.open(map, this);
});
});
“数据”是一个对象从地理定位服务返回。如果我在第一次创建gmap时将上面的'addMarker'代码放在绑定的'init'函数中,infoBox显示正常。当我在别处使用'addMarker'代码时,在控制台中出现“Uncaught ReferenceError:map is not defined”错误。
如何正确引用'地图'?看起来我不能做var map = $('#CHMap').gmap({//options});
,因为'jquery-ui-map'文档提示gmap不会返回任何内容。
嗨克里斯蒂亚诺,事实证明的方式来获得地图上的把手是'无功地图= $(“#CHMap”)。GMAP(“得到”,“地图”)'.I'll接受你回答并将编辑它为任何未来的谷歌。谢谢! –