AngularJS ngMap参数点击事件

时间:2015-08-27 05:36:37

标签: javascript angularjs google-maps

我试图使用此Angular Google地图指令reference。 我想为每个标记添加一个click事件,它会调用控制器中的一个函数,并通过标记的id。当我在控制台中打印出id时,我得到了" hq {latLng:wf,ub:undefined,pixel:undefined,xa:undefined}",这不是id。 我的HTML是

$scope.goAnchor = function (id) {
            console.log(id);
            gotoAnchor(id);
        };

我的控制器代码:

setHasOptionsMenu(true);

2 个答案:

答案 0 :(得分:2)

"这"返回您点击的标记

$scope.goAnchor = function (event) {
 console.log(this.id);
 gotoAnchor(this.id);
};

<强> HTML

<marker ng-repeat="marker in markers" position="{{marker.latitude}},{{marker.longitude}}" icon="{{marker.icon}}" id="{{marker.id}}" on-click="goAnchor($event)"></marker>

答案 1 :(得分:0)

我使用下面的代码获取点击标记的纬度和经度。

 <ng-map zoom="12" center="{{vm.geoCenterLoc}}" style="height:500px">
            <marker ng-repeat="p in vm.positions"
                    position="{{p.pos}}"
                    data="{{data[$index]}}"
                    on-click="myFunc($event)";
                    title="pos: {{p.pos}}"></marker>
   </ng-map>

Javascript(在我的控制器上):

$scope.myFunc = function (evt) {

            markerPosObj = {
                pos: [this.getPosition().lat(), this.getPosition().lng()]
            };
            markerPos = [];
            markerPos.push(markerPosObj);
            console.log('this marker', markerPos);
        }