在移动端页面中通过百度地图的js api生成的地图、在手机上无法进行缩放,只能通过百度地图的控件进行缩放,求解决办法。H5+的原生地图可以缩放这个我知道,但是无法实现百度地图的一些类似点聚合的功能
q***@163.com
- 发布:2019-02-15 10:07
- 更新:2019-02-15 11:17
- 阅读:6376
miskss - peter
js地图是可以进行手势操作的,你要手动开启。百度 js 地图 类API。
好像是enableInertialDragging()或enableContinuousZoom() 这方法,时间太长记不清,你自己试一下吧
q***@163.com (作者)
你好、我看API里面说的是默认开启,但是我这个没有生效、手动开启也是无效的、麻烦您能帮忙看看代码么
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=PwtEGYwzpanIhIoeNQj9N4Xb"></script>
<title>地图展示</title>
</head>
<body>
<div id="allmap"></div>
</body>
</html>
<script type="text/javascript">
// 百度地图API功能
var map = new BMap.Map("allmap"); // 创建Map实例
map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); // 初始化地图,设置中心点坐标和地图级别
//添加地图类型控件
map.addControl(new BMap.MapTypeControl({
mapTypes:[
BMAP_NORMAL_MAP,
BMAP_HYBRID_MAP
]}));
map.setCurrentCity("北京"); // 设置地图显示的城市 此项是必须设置的
map.enablePinchToZoom();
map.enableDoubleClickZoom();
</script>
对了、我申请的百度地图 的ak的类型是安卓SDK的、跟这个会有关系么
2019-02-15 13:50
miskss
运行没有什么问题呀,ak使用浏览器端就ok了,如果你需要5+的地图功能需要SDK版本AK
2019-02-15 14:12
miskss
http://lbsyun.baidu.com/jsdemo.htm#c2_2 这个里面有官方的API示例,你可以参考
2019-02-15 14:14
q***@163.com (作者)
。。。。那就奇怪了 、我这个出来就是不管用、就是不能缩放,这个也是无语了~是需要提交云端打包么?我现在是真机运行
2019-02-15 14:18
q***@163.com (作者)
我贴的这段代码就是API的示例、拿到我本地然后运行就是不生效
2019-02-15 14:18
miskss
我的也是真机运行的,我没用你的AK,我用的我自己的浏览器端的AK
2019-02-15 14:20
q***@163.com (作者)
好吧、跟mainifest.json配置会有关系么、我现在用H5+的地图功能倒是能够缩放、拖动。。。。。。。。
2019-02-15 14:24
q***@163.com (作者)
刚才贴的代码、那个地图类型还是能生效、就是这个缩放、拖动不管用
2019-02-15 14:26
miskss
如果你只是需要web地图,则不需要配送manifest中的地图ak,直接在html中用js引用就好了。如果用到5+ 的 geolocation 、Maps 这两个模块下的api则必须要配置Manifest
2019-02-15 14:29
q***@163.com (作者)
谢谢了、我新建了一个项目、把代码贴进去是可以的、可能是我这个项目的配置影响到了、
2019-02-15 14:53