首先说明百度地图api到目前还是没推出支持https协议下访问的api,现有的百度地图api在一些浏览器中因为https协议的问题不能正常工作。经过跟百度开发团队的几次沟通仍无果,决定弃用,转投google。
再次声明我们不需要google地图的国际化的太多功能只要满足中国人需要就好,经过几番研究。整理代码如下。
<script type="text/javascript" src="https://ditu.google.cn/maps/api/js?v=3.7&sensor=false&language=zh-CN"></script>
注意哦,看到那个域名了没,
function localSearch(divId,adress){
var geocoder = new google.maps.Geocoder();
var myOptions = {
zoom: 12,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: false
}
var map = new google.maps.Map(document.getElementById(divId), myOptions);
geocoder.geocode({ 'address': adress }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
var infowindow = new google.maps.InfoWindow({
//content:"<b>地址:</b>"+address+"<br>"
});
infowindow.open(map, marker);
} else {
alert("未能解析该地址的原因: " + status);
}
});
}
如果还要有什么别的需求,那就在这个基础上发挥去吧。