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基本上按 ...
随机推荐
- 3d max export for unity3d
3d max export for unity3d @by 广州小龙 1.单位问题 建模的时候,设置unity的Units Setup的单位是Meters,导出FBX文件的时候,单位为厘米(Centi ...
- 【POJ2396】Budget(上下界网络流)
Description We are supposed to make a budget proposal for this multi-site competition. The budget pr ...
- 自定义JSON配置器
比如要写个专门处理float类型的方法,然后注册到JSON配置器中,具体如下: 配置器代码如下: import java.math.RoundingMode; import java.text.Num ...
- YII model模型和登陆详解
模型是 CModel 或其子类的实例.模型用于保持数据以及与其相关的业务逻辑. 模型是单独的数据对象.它可以是数据表中的一行,或者一个用户输入的表单. 数据对象的每个字段对应模型中的一个属性.每个属性 ...
- Java开发手册
<Java开发手册> 基本信息 作者: 桂颖 谷涛 出版社:电子工业出版社 ISBN:9787121209161 上架时间:2013-8-12 出版日期:2013 年7月 开本 ...
- 14.8.4 Moving or Copying InnoDB Tables to Another Machine 移动或者拷贝 InnoDB 表到另外机器
14.8.4 Moving or Copying InnoDB Tables to Another Machine 移动或者拷贝 InnoDB 表到另外机器 这个章节描述技术关于移动或者复制一些或者所 ...
- cheerio返回数据格式
通读cheerio API { options: { decodeEntities: false, withDomLvl1: true, normalizeWhitespace: false, xml ...
- 【fs】
先判断是否存在再删除
- Linux Shell编程(20)——基本命令
新手必须要掌握的初级命令ls基本的列出所有文件的命令.但是往往就是因为这个命令太简单,所以我们总是低估它.比如,用 -R 选项,这是递归选项,ls 将会以目录树的形式列出所有文件, 另一个很有用的选项 ...
- Linux学习笔记1——Linux的目录结构
/ 是根目录 ~是主目录 bin 存放二进制可执行文件(Is,cat,mkdir等) boot 存放用于系统引导时使用的各种文件 dev 用于存放设备文件 etc 存放系统配置文件 home 存放所有 ...