首先,我使用的是 Angular Google Map (ng-map)。我想获得谷歌地图纬度和经度的点击位置。
我的代码
<ng-map center="[{{latitude}}, {{longitude}}]">
<marker position="[{{latitude}}, {{longitude}}]" title="how" animation="Animation.BOUNCE"></marker>
</ng-map>
首先,我使用的是 Angular Google Map (ng-map)。我想获得谷歌地图纬度和经度的点击位置。
我的代码
<ng-map center="[{{latitude}}, {{longitude}}]">
<marker position="[{{latitude}}, {{longitude}}]" title="how" animation="Animation.BOUNCE"></marker>
</ng-map>
您可以这样做,并且即使在标记拖动时也可以获得坐标:
<ng-map on-click="getpos($event)">
<marker ng-repeat="p in positions"
position="{{p}}" on-dragend="getpos($event)">
</marker>
</ng-map>
在你的控制器中:
$scope.getpos = function(event) {
console.log(event.latLng);
};
小提琴: 小提琴
更新: 初始化
编辑我会尝试
改变你的js
app.run(function(editableOptions) {
editableOptions.theme = 'bs3';
});
进入
app.run(function(editableOptions, $rootScope) {
editableOptions.theme = 'bs3';
$rootScope.$on('mapInitialized', function(evt,map) {
$rootScope.map = map;
$rootScope.$apply();
});
});
在谷歌地图中初始化:
var latlngbounds = new google.maps.LatLngBounds();
google.maps.event.addListener(map, 'click', function (e) {
alert("Latitude: " + e.latLng.lat(); + "\r\nLongitude: " + e.latLng.lng());
为此,您必须在地图上设置一项功能,点击
<ng-map center="[{{lat}}, {{lng}}]" zoom-to-inculude-markers="auto" on-click="getCurrentLocation($event)">
<marker position="{{latlng}}"></marker>
</ng-map>
在你的 controller.js 文件中,你可以像这样设置 lat long
$scope.getCurrentLocation = function(event){
console.log(event.latLng.lat());
console.log(event.latLng.lng());
}
希望这会帮助你。