angularjs google map markers+ ui-gmap-windows --->增加click 事件
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 事件的更多相关文章
- angularjs google map
google map display incorrect To remove the grayness, according to https://angular-ui.github.io/angul ...
- 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 ...
- Google map markers
现已被屏蔽 http://mabp.kiev.ua/2010/01/12/google-map-markers/ Надо по немногу отходить от празднывания но ...
- IView 给Submenu增加click事件失效解决方案
在浏览器中,打开开发者选项(F12) 找出对应的class,给其添加一个点击事件,就可以了. 具体的 document 操作,看这里 ----> https://www.cnblogs.co ...
- select选择option时触发的click事件google不兼容问题
原先的方式,下面代码编写的问题在google浏览器下是触发不了click事件的,具体缘由不清楚,反正都可以概括为不兼容了 碰到问题时,百度到的一篇解决:http://blog.163.com/rihu ...
- Google Map API 应用实例说明
目录 Google Map API 1基础知识 1.1 Google 地图 API 概念 1.2 Google 地图的"Hello, World" 1.2.1 加载 Google ...
- JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (2):JavaFX建立及程式碼說明 (转帖)
說明:就如同標題一樣,前端會用到JavaFX.Swing.Java Web Start.Google Map 的技術, 後端就是JDBC.Servlet的技術,以及我們會簽署認證jar檔案,這樣才可存 ...
- Google Map Api 谷歌地图接口整理
一:基本知识: 1. 使用谷歌地图 API 的第一步就是要注册一个 API 密钥,需要注重一下两点: 1.假如使用 API 的页面还没有发布,只是在本地调试,可以不用密钥,随便用个字符串代替就可以了. ...
- Google Map API v2 步步为营(一) ----- 初见地图
官方文档:https://developers.google.com/maps/documentation/android/start?hl=zh-CN 先谷歌后百度.使用google的api基本上按 ...
随机推荐
- 【HDU4552】 怪盗基德的挑战书(后缀数组)
怪盗基德的挑战书 Problem Description “在树最美丽的那天,当时间老人再次把大钟平均分开时,我会降临在灯火之城的金字塔前,带走那最珍贵的笑容.”这是怪盗基德盗取巴黎卢浮宫的<蒙 ...
- 【Windows 8】pid为4的system进程占用80端口的解决办法
因为Apache无法启动的原因,用netstat命令查看了一下80端口是否被占用了,如下: C:\Users\Maple>netstat -ano | findstr TCP LISTENING ...
- DestroyWindow
假设自己通过new创建了一个窗口对象pWnd,然后pWnd->Create.则销毁窗口的调用次序: 1. 手工调用pWnd->DestroyWindow(): 2. ...
- 【转】Android 驱动开发系列四
原文网址:http://www.2cto.com/kf/201304/202040.html 时隔多日,终于都抽出时间来写blog了.废话不多说,接着上一篇,这里将介绍如何编写HAL层(硬件抽象层)对 ...
- (转载)Mysql中,SQL语句长度限制
(转载)http://qjoycn.iteye.com/blog/1288435 今天发现了一个错误:Could not execute JDBC batch update 最后发现原因是SQL语句长 ...
- 自定义UITableView的Seperator
在默认配置中 ,UITableView的Cell之间的Seperator左边总是空出一块,即使在Storyboard中设置为0 ,也没有效果 需要在代码中进行配置,在ViewController中实现 ...
- xrdp远程 & watchdog 启用与测试 & WebRTC
sudo apt-get install xrdp sudo apt-get install vnc4server tightvncserver echo "xfce4-session&qu ...
- Mathlab编程-微积分在Matlab中的解法
这一章节将介绍一系列典型的微积分问题(求极限.级数.定积分.导数.重积分等)在Matlab中的求解. 首先关于极限: (1) 数列极限: 给出下面三段例程. 求解数列极限的limit函数参数说明 ...
- Ubuntu 安装vim出错
在Ubuntu 12.10中安装vim时出现了如下提示: www.linuxidc.com @linuxidc:/etc/apt$ sudo apt-get install vim正在读取软件包列表. ...
- The sum - SGU 122(斐波那契前N项和)
直接上代码....... ======================================================================================= ...