Tag: google maps api 3

IE8上Google Maps API的未指定错误

我的页面正在返回SCRIPT16389:IE8中未指定的错误。 我想我找到了它的原因但没有解决方案。 该错误来自Google Maps API,函数mq(a,b)。 问题是IE8似乎无法在异步加载的内容上处理getBoundingClientRect(),并且我正在使用jQuery.load()加载内容。 如果我创建一个页面与页面加载相同的内容而不是异步,则不会发生错误。 无论是否显示地图,都会在页面加载时发生错误,然后在窗口resize时发生错误。 几年前我发现人们在使用jQuery时遇到了同样的问题: http : //bugs.jquery.com/ticket/4996 访问offsetParent时,是否存在IE 6/7“未指定错误”错误的解决方法 有人知道修复或解决方法吗? 或者我做错了什么? 非常感谢。

Google GeoCode自动填充限制状态

我正在尝试在表单中添加Google Geocode自动填充字段。 我已经能够限制返回到国家(AU)的结果,但如果我可以将结果限制到州,那就更好了。 (新南威尔士/新南威尔士州) 这是我当前的initialize()函数: function initialize() { var options = { types: [‘geocode’], componentRestrictions: {country:”AU”} }; autocomplete = new google.maps.places.Autocomplete( (document.getElementById(‘autocomplete’)),options); google.maps.event.addListener(autocomplete, ‘place_changed’, function() { fillInAddress(); }); } 我已阅读文档,发现您可以使用types参数来限制结果,但我无法弄清楚确切的代码应该是什么。 只需将其更改为: types: [‘administrative_area1′:’NSW’], // OR ‘New South Wales’ 和以上类似的各种组合(=代替:等)没有奏效.. 有人能指出我正确的方向,实际的语法是我想要实现的目标吗? 谢谢。

Google Maps API v3:为symbolPath传递图像而不是内置符号

我刚刚了解了Google API提供的符号动画 。 我的代码中的每一件事都运行正常,但我只是想知道我是否可以在下面的代码中传递一个Image而不是一个符号。 var lineSymbol = { path: google.maps.SymbolPath.CIRCLE, scale: 8, strokeColor: ‘#393’ }; 如果是的话,我该怎么做? 我尝试过传递Image路径和Image对象。 什么工作..请帮帮我。

Google Maps Geocoder:返回postal_code

我正在使用Jquery UI使用Google Maps Geocoder自动完成对地址的搜索,当选择地址时,它会返回地理编码信息。 这是片段: $(‘#address-dropdown’).autocomplete({ //Use geocoder to fetch lat+long values from an address input using google maps API source: function(request, response) { geocoder.geocode( {‘address’: request.term }, function(results, status) { response($.map(results, function(item) { return { label: item.formatted_address, value: item.formatted_address, location: item.geometry.location, latitude: item.geometry.location.lat(), longitude: item.geometry.location.lng() } })); }) }, 我需要能够返回用途“postal_code”来检查它们是否存在于允许的区域内。 以下是一个示例输出: http : //maps.googleapis.com/maps/api/geocode/json?address […]

jQuery动画Google Map容器​​的高度

我有一个地图容器DIV。 让我们称之为#mapcontainer。 我用jQuery设置它的高度: $(“#mapcontainer”).animate({height: +=200px}, 500); 我知道如果要调整地图容器的大小,需要触发google地图以使用以下内容resize: google.maps.event.trigger(map, ‘resize’); 现在显而易见的是在animate的回调中这样做: $(“#mapcontainer”).animate({height: +=200px}, 500, “linear”, function(){ google.maps.event.trigger(map, ‘resize’); }); 但这看起来并不平滑,地图只是在动画完成后突然出现。 无论如何,地图可以在动画运行时resize,以便地图平滑过渡?

使用jquery gmap3和autoFit设置最大缩放级别

我在gmap3插件上使用’autoFit’,因此它可以缩放到地图上对象的最佳级别。 问题是当只有一个物体放大到最大水平时太远了。 我怎样才能让它变得比缩放等级14更进一步? 谢谢。

谷歌地理编码 – 无法拉动坐标

我在这里得到了一些帮助,我试图将两段代码放在一起以得到以下结果: 用户单击地理编码按钮向用户显示以下信息(类型地址,城市,州,国家,坐标) 这是我拼凑的代码和一些帮助: http : //jsfiddle.net/QA7Xr/25/ 这是完整的书面代码: var myLatlng = new google.maps.LatLng(31.272410, 0.190898); // INITALIZATION function initialize() { var mapOptions = { zoom: 4, center: myLatlng, mapTypeId: google.maps.MapTypeId.ROADMAP } var map = new google.maps.Map(document.getElementById(“map-canvas”), mapOptions); } // GEOCODE function codeAddress() { var address = document.getElementById(“address”).value; geocoder.geocode({ ‘address’: address }, function (results, status) { if (status […]

重新计算filter的markercluster onclick

JS FIDDLE HERE: http : //jsfiddle.net/useyourillusiontoo/g77np63c/1/ 我已经创建了一个谷歌地图,可以将标记向下植入,并允许我使用复选框进行过滤,而无需重新加载页面或地图。 好极了! 接下来我添加了也起作用的标记簇。 但是,当我现在单击我的标记时,群集不会更新。 那就是..群集内的数字不会改变,以反映隐藏/显示的标记。 当我放大时,标记仍然被隐藏/显示,但只有群集在缩小时不显示。 我在下面粘贴了我的代码并且会喜欢任何建议,因为我一直在摸不着头脑。 var map; var infowindow; var image = []; var gmarkers = []; var clusterMarkers = []; function mapInit(){ var centerCoord = new google.maps.LatLng(53.01265600000,-1.466105200000); var mapOptions = { zoom: 6, center: centerCoord, mapTypeId: google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById(“map-canvas”), mapOptions); google.maps.event.addListener(map, ‘click’, function() […]

Google Geocoding v3 – 格式化地址

我想知道是否有人能帮助我。 我很难在我的地理编码结果的对话框中将坐标和格式化地址返回给我,即使我似乎能够抓住城市,国家。 这是我正在使用的代码: http://jsfiddle.net/d5DBh/5/ 码 var myLatlng = new google.maps.LatLng(31.272410, 0.190898); // INITALIZATION function initialize() { var mapOptions = { zoom: 4, center: myLatlng, mapTypeId: google.maps.MapTypeId.ROADMAP } var map = new google.maps.Map(document.getElementById(“map-canvas”), mapOptions); } // GEOCODE function codeAddress() { var address = document.getElementById(“address”).value; new google.maps.Geocoder().geocode({ ‘address’: address }, function (results, status) { if (status == […]

使用jQuery ajax.get计算输入地址的谷歌距离和MySQL服务器的所有地址

问题描述 我想创建一个用户可以输入地址的网页,然后服务器将计算从输入地址到MySQL数据库中每个地址的距离。 我正在尝试使用ajax GET方法来做到这一点。 我有以下代码: 当我通过URL栏手动输入GET变量时,上面的代码块工作正常。 例如: http://www.example.com/find_distance.php?lat=123456&lng=234567 但是,我想要一种方法,以便输入地址将通过Geocode自动转换为lat和lng。 我使用以下代码进行地理编码: function searchAddress(addr) { geocoder = new google.maps.Geocoder(); geocoder.geocode({address:addr}, function(result){ loc = result[0].geometry.location; }); return loc; } 我正在尝试使用下面的ajax get方法:但它似乎并不像我想要的那样工作: var data = ‘lat=’+loc.lat()+’&lng=’+loc.lng(); $.ajax({ url:’find_distance.php’, type:’GET’, data: data, cache:false, complete:function(){alert(‘Complete’);}, success:function(){alert(‘success, ‘+data);} }); } 它似乎不起作用。 我是否必须以某种方式告诉PHP代码在PHP代码部分再次运行?