如果它对某人有帮助…我放弃了,我完全改变了逻辑本身,现在它可以按预期工作:
首先,我将google maps js附加到正文中
var script = document.createElement( 'script' );script.type = 'text/javascript';script.src = 'http://maps.google.com/maps/api/js?sensor=false&callback=get_longlat';$("body").append( script );如您所见,我指定了回调函数get_longlat …
所以我定义了这个功能并使用了谷歌的地理编码对象
function get_longlat(address){ var geoprer = new google.maps.Geoprer(); if(!address){ var p = US.get("location_postal"); var c = US.get("location_city"); var a = US.get("location_address"); var address = a + ', ' + p + ' ' + c + ', Slovenia'; } if (geoprer) { geoprer.geopre({ 'address': address }, function (results, status) { if (status == google.maps.GeoprerStatus.OK) { US.set("location_lat", results[0].geometry.location.lat(), 60); US.set("location_lon", results[0].geometry.location.lng(), 60); $('#location_setter').dialog('close'); } else { console.log('No results found: ' + status); } }); }}里面的US变量是用户设置的我们自己的名称空间
希望对别人有帮助



