/**
* @Author sai
*
*/
Ext.define('SmartMenu.view.contact.Map', {
extend: 'Ext.Map',
config: {
t:'',
lat:'',
lng:'',
mapOptions: {
zoom: 9
},
listeners: [
{
fn: 'onMapMaprender',
event: 'maprender'
}
]
},
onMapMaprender: function(map, options) {
var gmap=this.getMap();
var infoWindow = new google.maps.InfoWindow();
var title=this.getT();
infoWindow.setContent(title);
var c=new google.maps.LatLng( this.getLat(),this.getLng());
map.setMapCenter(c);
var marker= new google.maps.Marker({
position:c,
map: gmap,
title:title,
draggable: false,
animation: google.maps.Animation.DROP
});
infoWindow.open(gmap, marker);
google.maps.event.addListener(marker, "click", function() {
infoWindow.close();
infoWindow = new google.maps.InfoWindow({
map: gmap,
position: c,
content: title
});
});
navigator.geolocation.getCurrentPosition(function(position) {
pos = new google.maps.LatLng(position.coords.latitude,
position.coords.longitude);
var centerMarker= new google.maps.Marker({
position: pos,
map: gmap,
draggable: false,
animation: google.maps.Animation.DROP
});
google.maps.event.addListener(centerMarker, "click", function() {
infoWindow.close();
infoWindow = new google.maps.InfoWindow({
title:arrLang[23],
map: gmap,
position: pos,
content: arrLang[24]
});
});
var populationOptions = {
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: "#FF0000",
fillOpacity: 0.35,
map: gmap,
center: pos,
radius: 1000
};
var cityCircle = new google.maps.Circle(populationOptions);
var Target= marker.getPosition();
var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer();
directionsDisplay.setMap(gmap);
var request = {
origin:pos,
destination:Target,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(result, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(result);
}
});
setTimeout(function(){infoWindow.close();},3000);
},function(){
alert("Error",arrLang[25]);
});
}
});
var map= Ext.create('SmartMenu.view.contact.Map',
{ //id:'Map',
fullscreen: true,
title: map,
t: data.title,
lat: data.lat,
lng: data.lng
});
var btn = Ext.getCmp('btnFavorites');
btn.setText('重新定位');
// btn.setIconCls('locate');
btn.setHidden(false);
btn.setHandler(function () {
map.fireEvent('maprender', map);
}
);
分享到:
相关推荐
2. **示例代码**:包含许多实际应用的例子,展示了如何在项目中使用Sencha Touch的各种功能。 3. **快速入门指南**:针对初学者的教程,引导他们快速上手Sencha Touch的开发环境和基本操作。 4. **用户手册**:...
Sencha Touch 2是一款专为移动设备开发的前端框架,用于构建高性能的触控应用程序。它提供了丰富的组件库,使得开发者能够轻松创建出与原生应用相似的用户体验。本篇文章将详细阐述如何搭建Sencha Touch 2的开发环境...
sencha touch 2 实现的贪吃蛇 希望对大家有所帮助
Sencha Touch 2 是一个流行的JavaScript框架,专为构建移动Web应用程序而设计。它提供了丰富的UI组件、数据管理和触摸事件处理,使得开发者可以创建与原生应用类似的交互体验。MVC(Model-View-Controller)架构模式...
标题中的"api.zip_sencha _sencha touch api_sencha touch2 api"表明这是一个关于Sencha Touch API的压缩文件集合,可能包含了Sencha Touch和Sencha Touch 2两个版本的API文档。 **Sencha Touch基础知识** Sencha ...
本文通过对 Sencha Touch 框架的介绍,使读者对该框架有一定的了解,并通过一些代码示例给用户更详细直观的对 Sencha Touch 框架功能的了解。 ExtJS ExtJS 是为 web 开发人员提供的基于 JavaScript 和 web 标准快速...
Sencha Touch 是一款专为移动设备设计的JavaScript框架,它提供了丰富的组件库和强大的数据管理功能,用于构建高性能的触控应用。"sencha touch 登陆界面"这个主题,主要涉及的是如何使用Sencha Touch来设计和实现一...
2. 开发环境搭建:指导读者如何搭建Sencha Touch的开发环境,包括下载和安装Sencha Touch库。 3. 用户界面组件:详细介绍Sencha Touch提供的各种用户界面组件,如按钮、列表、表单、滑动菜单等。 4. 应用结构与生命...
2. **模型(Model)与存储(Store)**:Sencha Touch使用MVC(Model-View-Controller)架构。模型用于定义数据结构和业务逻辑,而存储则负责管理数据,包括加载、保存和同步到服务器。 3. **视图(View)与控制器...
《般若人生》是一款基于Sencha Touch框架开发的移动应用项目。Sencha Touch是一个流行的JavaScript框架,专门用于构建跨平台的触屏友好型Web应用程序。它提供了丰富的UI组件和强大的数据管理工具,使得开发者能够...
2. **sencha-touch-all.js**:这是Sencha Touch的完整构建,包含所有组件和功能。在开发阶段,为了方便调试,我们通常使用此文件;但在生产环境中,为了优化性能,我们会使用按需加载的精简版(如sencha-touch.js)...
在探讨“Sencha Touch2 AJAX获取数据”的主题时,我们首先需要理解Sencha Touch2框架的基本概念以及AJAX技术在其中的应用。Sencha Touch2是一个用于构建高性能、跨平台的移动应用的JavaScript库,它专注于触摸设备上...
Sencha Touch 是一款专为移动设备设计的前端框架,它提供了丰富的组件库,用于构建高性能的触屏Web应用。在“sencha touch list demo”中,我们主要关注的是Sencha Touch中的列表(List)组件,这是一个核心且常用的...
Sencha Touch 2.4.0 是一个专为移动设备设计的前端JavaScript框架,它使得开发者能够构建功能丰富的、响应式的Web应用程序,这些应用在智能手机、平板电脑等移动设备上表现得如同原生应用一样流畅。这个框架由Sencha...
2. **语法高亮**:对Sencha Touch的JavaScript语法进行特殊标记,使代码更易读。 3. **模板和snippet**:预设Sencha Touch常用代码片段,快速构建组件。 4. **调试支持**:可能包含Sencha Touch应用的调试工具,帮助...
这个"Sencha Touch中文翻译文档"是针对Sencha Touch 2(ST2)的详细教程和指南,旨在帮助中国开发者更轻松地理解和运用这一框架。 在入门基础部分,文档可能涵盖了以下内容: 1. **安装与设置**:如何下载Sencha ...
Sencha Touch 2 Up and Running还概览了Sencha Touch的类库,这是构建Sencha Touch应用的基础。类库不仅包括构建用户界面的基础组件,还包括数据管理、视图和控制器等多个方面。在书中,作者强调了如何有效地利用...