百度地图javascript api的开发 中地图加载不出来只为什么
1个回答
2016-10-18 · 知道合伙人软件行家
关注
展开全部
同步加载
这是最常见的加载方式,开发者需要在页面的head标签内添加一个script标签,标签的src属性填写为地图API的地址:<script src="http://api.map.baidu.com/api?v=1.2"></script>
此时脚本是同步加载的,如果直接在浏览器敲入这个地址你会发现这段js脚本实际返回的内容为:
document.write('<link rel="stylesheet" type="text/css" href="http://api.map.baidu.com/res/12/bmap.css"/>');
document.write('<script type="text/javascript" src="http://api.map.baidu.com/getscript?v=1.2&key=&services=&t=2922163450"></script>');
返回的脚本通过document.write方法写入了一个link标签和另一个script标签,link标签负责加载API的样式表文件,而另一个script则是地图API真正的脚本资源。当然你也可以把脚本写在body标签内,但是从规范角度来说不建议这么写(html4规范上规定link标签只能存在于head标签内)。一个完整的同步加载的代码示例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>同步加载</title>
<script src="http://api.map.baidu.com/api?v=1.2"></script>
</head>
<body>
<div id="map" style="width:500px;height:320px;"></div>
<script>
var map = new BMap.Map("map");
map.centerAndZoom(new BMap.Point(121.491, 31.233), 11);
</script>
</body>
</html>
这是最常见的加载方式,开发者需要在页面的head标签内添加一个script标签,标签的src属性填写为地图API的地址:<script src="http://api.map.baidu.com/api?v=1.2"></script>
此时脚本是同步加载的,如果直接在浏览器敲入这个地址你会发现这段js脚本实际返回的内容为:
document.write('<link rel="stylesheet" type="text/css" href="http://api.map.baidu.com/res/12/bmap.css"/>');
document.write('<script type="text/javascript" src="http://api.map.baidu.com/getscript?v=1.2&key=&services=&t=2922163450"></script>');
返回的脚本通过document.write方法写入了一个link标签和另一个script标签,link标签负责加载API的样式表文件,而另一个script则是地图API真正的脚本资源。当然你也可以把脚本写在body标签内,但是从规范角度来说不建议这么写(html4规范上规定link标签只能存在于head标签内)。一个完整的同步加载的代码示例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>同步加载</title>
<script src="http://api.map.baidu.com/api?v=1.2"></script>
</head>
<body>
<div id="map" style="width:500px;height:320px;"></div>
<script>
var map = new BMap.Map("map");
map.centerAndZoom(new BMap.Point(121.491, 31.233), 11);
</script>
</body>
</html>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询