我是在 Google 地图页面上设置地理编码的新手,我正在使用 Map Scripting 101 一书中的示例。我试图调出一个在 Google 地图上进行地理编码的静态地址。我试图将代码转移到我自己的 html 页面,但它不起作用。我替换了我的 Google API 密钥,并且我的 mapstraction 目录的路径是正确的。我绝对在正确的网站上使用我的代码,因为我的 Google API 与其他地图一起使用没有任何问题。问题只是 html 代码中静态地址的地理编码。
我想我在获得 Google API 时已经设置了所有适当的服务。但是,我不清楚除了制作标准地图之外是否还需要地理编码的特殊 API 服务。
这是我无法工作的 HTML 代码。显示的只是一个外壳,里面没有地图,也没有地理编码点。我从书中的示例和本书随附的网站上获得了此代码。
<script src="http://maps.google.com/maps?file=api&v=2&key=AIzaSyDYqIvje6tt-`enter code here`g4NnWOLAVqwBWCcMuI5rvM&sensor=false" type="text/javascript"></script>
<script type="text/javascript" charset="utf-8" src="js/mxn.js?(google)"></script>
<script src="js/mxn.google.geocoder.js"></script>
<style>
div#mymap {
width: 400px;
height: 350px;
}
div#clicks {
width: 400px;
}
</style>
<script type="text/javascript">
var mapstraction;
var mks = [];
function create_map() {
mapstraction = new mxn.Mapstraction('mymap', 'google');
mapstraction.addSmallControls();
mapstraction.setMapType(mxn.Mapstraction.PHYSICAL);
mapstraction.setCenterAndZoom(defaultcenter, 15);
geocoder = new MapstractionGeocoder(add_point, 'google');
var address = {
street: "38 Ringold Street",
locality: "San Francisco",
region: "CA",
country: "US"
};
//OR:
//var address = {
// address: "38 Ringold St, San Francisco, CA"
//};
geocoder.geocode(address);
}
function add_point(loc) {
var mk = new mxn.Marker(loc.point);
mk.setInfoBubble(loc.address);
mapstraction.addMarker(mk);
mk.openBubble();
mapstraction.autoCenterAndZoom();
}
</script>
</head>
<body onload="create_map()">
<div id="mymap"></div>
</body>
</html>