jsp:

<div class="modal-body viewOnMap">
<div class="cboxClose" ng-click="fn.close()">close</div>
<div class="mgt-20">
<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'" click="'onClicked'" >
<ui-gmap-windows show="showWindow">
<div ng-controller="infoWindowCtrl">
<a ng-click="showInfo()">Contact Info</a><hr class="mgt-5 mgb-5" ng-non-bindable/>
<a ng-click="showInfo()">Contact Address</a><hr class="mgt-0 mgb-5" ng-non-bindable/>
<a ng-click="showInfo()">Other</a>
<!--<span ng-click="showInfo()">Contact Info</span><hr class="mgt-0 mgb-0" ng-non-bindable/>
<span ng-click="showInfo()">Contact Address</span><hr class="mgt-0 mgb-0" ng-non-bindable/>
<span ng-click="showInfo()">Other</span>-->
</div>
</ui-gmap-windows>
</ui-gmap-markers>
</ui-gmap-google-map>
</div>
</div> js:
.controller('viewOnMapInfoCtrl',['$scope','$rootScope','NiHttp','NiDialog','$timeout','order','latlng','uiGmapIsReady',function($scope,$rootScope,NiHttp,NiDialog,$timeout,order,latlng,uiGmapIsReady){
var vm = $scope.vm = {};
var fn = $scope.fn = {}; fn.close=function(){
NiDialog.close();
}
if(order!=null && latlng==null){
var srcOpt = {
url: '/orderHistory/findLeadsByOrderCode',
data: {orderCode:order.orderCode}
};
NiHttp.postForm(srcOpt)
.success(function(data){
console.log(_.uniq(_.pluck(data.result,'coordinate')));
vm.coordinate=_.uniq(_.pluck(data.result,'coordinate'));
})
}
if(order==null && latlng!=null){
vm.coordinate=latlng;
}
$timeout(function () {
$scope.map = {
center: {
latitude: latlng[0].split(',')[0],
longitude: latlng[0].split(',')[1]
},
zoom: 13,
bounds: {}
};
$scope.options = {
scrollwheel: true
};
var createRandomMarker = function(i, bounds,latitude,longitude,idKey) { if (idKey == null) {
idKey = "id";
} var ret = {
latitude: latitude,
longitude: longitude,
title: 'm' + i,
showWindow: false,
coords: {
latitude: latitude,
longitude: longitude
},
};
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 = [];
_.forEach(vm.coordinate,function(item,key){
var latlng=item.split(',');
console.log(latlng);
markers.push(createRandomMarker(key, $scope.map.bounds,latlng[0],latlng[1]));
})
$scope.randomMarkers = markers;
}
}, true);
_.each($scope.randomMarkers, function (marker) {
marker.closeClick = function () {
marker.showWindow = false;
$scope.$apply();
};
marker.onClicked = function () {
$scope.onMarkerClicked(marker);
};
});
}, 0); var markerToClose = null;
$scope.onMarkerClicked = function (marker) {
markerToClose = marker; // for next go around
marker.showWindow = true;
$scope.$apply();
}; }])
.controller('infoWindowCtrl', function($scope) {
$scope.showInfo = function() {
console.log('Button clicked!');
}
})

angularjs google map markers+ ui-gmap-windows --->增加click 事件的更多相关文章

  1. angularjs google map

    google map display incorrect To remove the grayness, according to https://angular-ui.github.io/angul ...

  2. javascript google map circle radius_changed ,angularjs google map circle radius_changed

    javascript: var cityCircle = new google.maps.Circle({ strokeColor: '#FF0000', strokeOpacity: 0.8, st ...

  3. Google map markers

    现已被屏蔽 http://mabp.kiev.ua/2010/01/12/google-map-markers/ Надо по немногу отходить от празднывания но ...

  4. IView 给Submenu增加click事件失效解决方案

    在浏览器中,打开开发者选项(F12) 找出对应的class,给其添加一个点击事件,就可以了. 具体的  document  操作,看这里 ----> https://www.cnblogs.co ...

  5. select选择option时触发的click事件google不兼容问题

    原先的方式,下面代码编写的问题在google浏览器下是触发不了click事件的,具体缘由不清楚,反正都可以概括为不兼容了 碰到问题时,百度到的一篇解决:http://blog.163.com/rihu ...

  6. Google Map API 应用实例说明

    目录 Google Map API 1基础知识 1.1 Google 地图 API 概念 1.2 Google 地图的"Hello, World" 1.2.1 加载 Google ...

  7. JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (2):JavaFX建立及程式碼說明 (转帖)

    說明:就如同標題一樣,前端會用到JavaFX.Swing.Java Web Start.Google Map 的技術, 後端就是JDBC.Servlet的技術,以及我們會簽署認證jar檔案,這樣才可存 ...

  8. Google Map Api 谷歌地图接口整理

    一:基本知识: 1. 使用谷歌地图 API 的第一步就是要注册一个 API 密钥,需要注重一下两点: 1.假如使用 API 的页面还没有发布,只是在本地调试,可以不用密钥,随便用个字符串代替就可以了. ...

  9. Google Map API v2 步步为营(一) ----- 初见地图

    官方文档:https://developers.google.com/maps/documentation/android/start?hl=zh-CN 先谷歌后百度.使用google的api基本上按 ...

随机推荐

  1. Delphi WebBrowser控件的使用(大全 good)

    Delphi WebBrowser控件的使用 WebBrowser控件属性:1.Application      如果该对象有效,则返回掌管WebBrowser控件的应用程序实现的自动化对象(IDis ...

  2. spring 动态数据源

    1.动态数据源:  在一个项目中,有时候需要用到多个数据库,比如读写分离,数据库的分布式存储等等,这时我们要在项目中配置多个数据库. 2.原理:   (1).spring 单数据源获取数据连接过程: ...

  3. Condition-线程通信更高效的方式

    接近一周没更新<Java线程>专栏了,主要是这周工作上比较忙,生活上也比较忙,呵呵,进入正题,上一篇讲述了并发包下的Lock,Lock可以更好的解决线程同步问题,使之更面向对象,并且Rea ...

  4. 【转】java代码中实现android背景选择的selector-StateListDrawable的应用

    原文网址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0924/1712.html 下面的代码应该很多人都熟悉: 1 2 3 ...

  5. 【转】更新SDK后,打包APK时报 the zipalign tool was not found in the sdk

    原文网址:http://wyong.blog.51cto.com/1115465/1546632 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任 ...

  6. 2015第43周三memcached

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached ...

  7. bootstrap真是个好东西

    之前就知道有bootstrap这么个东东,但是因为本身不做web,也就没有仔细了解.这次一个项目合作方使用django和bootstrap做的,有机会接触了一些,感觉确实非常好! 今天下午利用一个下午 ...

  8. WIA Property Constant Definitions

    (@http://msdn.microsoft.com/en-us/library/windows/desktop/ms630202(v=vs.85).aspx): const DeviceID = ...

  9. checkbox操作

    小小示例:自己备份顺便粘出来共享. 引入头部文件:<script src="../js/jQuery1.7.2.js"></script> HTML代码: ...

  10. 324. Wiggle Sort II

    这个题真是做得我想打人了.我生起气来连自己都打. 一开始quick select没啥可说的.但是in place把老命拼了都没想出来.. 看网上的答案是3 partition,MAP式子一看就由衷地反 ...