初识SFDC创建一个google map(添加了marker小图标让他可以去到你输入的经纬度上)

 1 <apex:page >
 2     <head>
 3         <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
 4         <script type="text/javascript" src="http://maps.google.cn/maps/api/js?sensor=false"></script>
 5         <script type="text/javascript">
 6             function myLoad() {
 7
 8
 9                 lat = document.getElementById("{!$Component.form.pageBlock1.text1}").value;
10
11
12                 lng = document.getElementById("{!$Component.form.pageBlock1.text2}").value;
13
14                     var myLatLng = new google.maps.LatLng(lat, lng);
15                 var myOptions = {
16                     zoom: 15,
17                     center: myLatLng,
18                     mapTypeId: google.maps.MapTypeId.ROADMAP
19                 };
20                 var map = new google.maps.Map(document.getElementById("map"), myOptions);
21
22                 var marker = new google.maps.Marker({
23                       position: myLatLng,
24                       draggable: true
25                   });
26                   marker.setMap(map);
27
28                   var win2 = null;
29                   //添加了侦听每次移动都会生成新的win1,但是会重叠覆盖;
30                 google.maps.event.addListener(marker, ‘dragend‘, function() {
31                     var win1 = new google.maps.InfoWindow({
32                             content: "経度:" + marker.position.lat() + " " + "緯度:" + marker.position.lng()
33                       });
34                     win1.open(map, marker);
35                     //每次都关闭上一个就不会有重复了;
36                     if(win2) {
37                         win2.close();
38                     }
39                         win2 = win1;
40                 });
41             }
42             window.onload = myLoad;
43         </script>
44     </head>
45     <body>
46         <style>
47               #map {
48                 width: 500px;
49                 height: 400px;
50                 float: left;
51               }
52           </style>
53           <div id="map"></div>
54          <apex:form id="form">
55              <apex:pageBlock id="pageBlock1">
56                  <apex:inputText id="text1"/>
57                  <apex:inputText id="text2"/>
58                  <apex:pageBlockButtons >
59                      <apex:commandButton onclick="myLoad()" value="change"/>
60                  </apex:pageBlockButtons>
61              </apex:pageBlock>
62              <apex:pageBlock >
63
64
65              </apex:pageBlock>
66
67          </apex:form>
68     </body>
69 </apex:page>
其实就是这两句话啦。在下面添加两个 apex:inputText输入框,设置上ID然后后通过{!$Component.form.pageBlock1.text1}每一级的ID获取,就可以获取到你输入的地址然后定位了。
           lat = document.getElementById("{!$Component.form.pageBlock1.text1}").value;
10
11
12                 lng = document.getElementById("{!$Component.form.pageBlock1.text2}").value;本列要注意的地方有很多1,必须用IE浏览器打开WIN10的不好用;2,我原来获取ID的时候是在浏览器页面按F12,然后选择你要的组件,它就会告诉你ID。好处是不需要自己手动的给每一级都添加ID,缺点也很明显就是每次只要你改动<body></body>里面的内容,id就会改变,每次都要重新获取,直到我看见了别人这么写才…………3,就是上一个例子里提到的
marker.position.lat()
marker.position.lng()这两个方法,草鸡好用,直接帮获取到经纬度。4,这是我最无语错误,由于本例刚刚加载完毕的时候,是没有输入经纬度的,所以它有一个默认的地址,是在海上……在海上……海上……以至于我以为一直没有加载出来,直到我师傅过来拨了拨我的鼠标滚轮(缩放)然后才看见其他的东西,5,就是其实可以不用添加button组件的,只要输入新的经纬度,enter就可以跳转,这个很神奇为什么enter的时候inputText里面的东西没被清空,被保留了呢?求教!!!
时间: 2024-08-10 15:09:03

初识SFDC创建一个google map(添加了marker小图标让他可以去到你输入的经纬度上)的相关文章

初识SFDC创建一个google map(添加了marker小图标)

1 <apex:page > 2 <head> 3 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 4 <script type="text/javascript" src="http://maps.google.cn/maps/api/js?sensor=false"></scr

初识SFDC创建一个google map(添加了marker小图标上的小框框InfoWindow可变更文字)

1 <apex:page > 2 <head> 3 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 4 <script type="text/javascript" src="http://maps.google.cn/maps/api/js?sensor=false"></scr

初识SFDC创建一个google map(最基础版本)

google map 目前我只会用js创建,好处是不需要申请google地图钥匙直接就可以用: 有一点必须强调,浏览器必须是IE <apex:page > <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <script type="text/javascript" src="http://

创建一个数组,数组中保存一批量的学生信息,把该数组信息储存到磁盘上,并能解归档出来

/*2.创建一个数组,数组中保存一批量的学生信息,把该数组信息储存到磁盘上,并能解归档出来*/ #import <Foundation/Foundation.h>#define path @"/Users/qianfeng/Desktop/hehe/5.plist"int main(int argc, const char * argv[]) {    @autoreleasepool {                NSMutableArray *marray = [[

创建一个能成功引导开机的小linux裸机-2015090401

我们自行使用创建一个可以正常开机的linux系统,但是功能不健全,仅为其能正常引导开机:步骤如下: 第一步:在虚拟机添加一块新硬盘 第二步:在新硬盘上创建分区,1个/boot ,1个swap分区,一个根分区: [[email protected] ~]# fdisk -l /dev/sdb   Disk /dev/sdb: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinder

程序创建一个ArrayList,添加1到10的10个随机数,删除大于5的数 java

package test; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Random; public class CreateArrayList { public static void main(String[] args) { List<Integer> newList = create(10); System.out.println(Arrays.

TortoiseSVN Checkout的文件夹没有绿色小对号,其他更改、添加等所有小图标均未显

检出查看是有.svn文件夹的,说明是成功Checkout的,但是所有文件都没有绿色图标 最后查看设置的时候有 图标覆盖>图标集,默认是XPStyle,本人是win7系统,选择MufWin7重新启动下电脑就OK了.

google maps js v3 api教程(1) -- 创建一个地图

原文地址 google maps javascript官方文档:https://developers.google.com/maps/documentation/javascript/ 在创建地图之前,我们进入 Google Developers Console创建一个key,用于我们开发地图的身份验证(当然,没有key也可以进行接下来的教程) 创建一个简单的地图: <!DOCTYPE html> <html> <head> <title>Simple Ma

【Unity Shaders】游戏性和画面特效——创建一个老电影式的画面特效

本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源(当然你也可以从官网下载). ========================================== 分割线 ========================================== 写在前面 终于到了本书的最后一章了,好激动有木有!作为压轴章,虽然只有两篇,但每篇的内容是比之前的任