fit=“true” + 单个标记 => 缩放太大,角度谷歌地图,角度js
fit="true" + single marker => zoom too big , Angular-google-maps,Angular js
当我在页面上只有一个标记时,我正在努力设置缩放级别。页面加载时市场放大到难以看到周围区域的程度。
angular.module('appMaps', ['uiGmapgoogle-maps'])
.controller('mainCtrl', function($scope,$http) {
$scope.map = {
center: {
latitude: 0,
longitude: 0
},
zoom: 2
,
bounds: {}
};
$scope.options = {
scrollwheel: false
};
var createRandomMarker = function(i, bounds, idKey) {
var lat_min = bounds.southwest.latitude,
lat_range = bounds.northeast.latitude - lat_min,
lng_min = bounds.southwest.longitude,
lng_range = bounds.northeast.longitude - lng_min;
if (idKey == null) {
idKey = "id";
}
var latitude = lat_min + (Math.random() * lat_range);
var longitude = lng_min + (Math.random() * lng_range);
var ret = {
latitude: latitude,
longitude: longitude,
title: 'm' + i
};
ret[idKey] = i;
return ret;
};
$scope.randomMarkers = [];
// Get the bounds from the map once it's loaded
$scope.$watch(function() {
return $scope.map.bounds;
}, function(nv, ov) {
// Only need to regenerate once
if (!ov.southwest && nv.southwest) {
var markers = [];
for (var i = 0; i < 1; i++) {
markers.push(createRandomMarker(i, $scope.map.bounds))
}
//$scope.randomMarkers = markers;
}
}, true);
disIcon = function(){
var markers = [];
var ret = {
latitude: 32.7689285,
longitude: -89.1079636,
title: 'm'
};
ret['id'] = 1;
markers.push(ret);
$scope.randomMarkers = markers;
}
disIcon();
});
html, body, #map_canvas {
height: 100%;
width: 100%;
margin: 0px;
margin-top:20px;
}
#map_canvas {
position: relative;
}
.angular-google-map-container {
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
}
<!DOCTYPE html>
<html xmlns:ng="http://angularjs.org/" ng-app="appMaps">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script src="https://code.angularjs.org/1.3.14/angular.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.js"></script>
<script src="http://rawgit.com/angular-ui/angular-google-maps/2.0.X/dist/angular-google-maps.js"></script>
<!--script-->
<style type="text/css">
html, body, #map_canvas {
height: 100%;
width: 100%;
margin: 0px;
margin-top:20px;
}
#map_canvas {
position: relative;
}
.angular-google-map-container {
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
}
</style>
</head>
<body>
<div id="map_canvas" ng-controller="mainCtrl">
<ui-gmap-google-map center="map.center" zoom="map.zoom" draggable="true" options="options" bounds="map.bounds">
<ui-gmap-markers models="randomMarkers" coords="'self'" icon="'icon'" fit="true">
</ui-gmap-markers>
</ui-gmap-google-map>
</div>
<!--example-->
</body>
</html>
我所做的是在ui-gmap-markers中使用ng-if。如果 1 个标记,则使用 fit=false,如果多个标记使用 fit=true。
相关文章:
- 谷歌地图JS API+JSON-多个标记没有显示
- 谷歌地图 JS APIV3.
- 谷歌地图JS API-如何使用fitBounds响应地图
- 如何在本地而非CDN中包含谷歌地图JS库
- 用谷歌地图js api v3制作路线动画
- 谷歌地图JS只是显示了一个灰色框
- 谷歌地图 JS API v3 - 简单的多重标记 v2
- 谷歌地图 JS API v3:使用 containsLocation() 获取圆圈标记不起作用 - 为什么
- 谷歌地图js不显示在chrome或opera中
- 在谷歌地图 JS API 上获取两个点之间的点的纬度和经度(按百分比)
- 地图不显示与谷歌地图 js API 一起
- 错误“包含”未定义在谷歌地图 JS API 中
- 谷歌地图JS v3 MysqlWhile循环
- 谷歌地图JS API V3 addMarker-标记在源代码中回声,没有地图
- Richmarker获取事件.点击谷歌地图js-apiv3
- 谷歌地图js-api.页面上有许多地图
- 谷歌地图JS慢狩猎
- 如何知道一个坐标是在多边形内还是在多边形外?PHP +谷歌地图+ JS
- 谷歌地图JS不显示(尝试其他答案)
- 防止谷歌地图JS多次执行由Rails Turbolinks引起的