javascript中鼠标在地图上的经纬度怎么获取

javascript中鼠标在地图上的经纬度怎么获取,第1张

自己写有难度吧!!!

查看百度地图api里头有说明获取实时经纬度的。

1、成为开发者,获取百度地区秘钥

2、引入百度地图js插件

3、获取经纬度

<script type="text/javascript">

// 初始化地图

var map = new BMapMap("allmap");

var point = new BMapPoint(116331398,39897445);

mapcenterAndZoom(point,12);

mapaddEventListener("click", function(e){ //鼠标点击事件

var pt = epoint;

alert(ptlng + "xxx" + ptlat)//d窗经纬度

});</script>

/

 添加标记

 @param [{id:主键,name:名称,lon:经度,lat:纬度,icon:图标,context:d窗内容,viewImg:d窗},] data

/

function addMar(data){

for(var i = 0; i < datalength; i++){

var marker = new BMapMarker(new BMapPoint(data[i]lon, data[i]lat),{icon:new BMapIcon(data[i]icon, new BMapSize(50,50))});  // 创建标注

markersetTitle(data[i]name);

markerdataCont = data[i];

mapaddOverlay(marker);

markeraddEventListener("click", function(e){   

var viewWin = "<h4 style='margin:0 0 5px 0;padding:02em 0'>"+etargetdataContname+"</h4>" + 

"<img style='float:right;margin:4px' id='imgDemo' src='"+etargetdataContviewImg+"' width='139' height='104' title='"+etargetdataContname+"'/>" + 

"<p style='margin:0;line-height:15;font-size:13px;text-indent:2em'>"+etargetdataContcontext+"</p>" + 

"</div>";

var infoWindow = new BMapInfoWindow(viewWin);

thisopenInfoWindow(infoWindow);

//加载完毕重绘infowindow

documentgetElementById('imgDemo')onload = function (){

infoWindowredraw();//防止在网速较慢,未加载时,生成的信息框高度比的总高度小,导致部分被隐藏

}

});

}

}

可以这样,先把生成标注的json数据直接存进marker对象添加marker的点击监听,触发监听事件时会拿到marker对象本身,从里面可以获取之前我们存进去的json数据,然后拿这个json数据直接生成d窗

jquery mobile中获取触摸坐标的方法:

思路:利用jquerymobilejs(下载)获取GPS设备的经纬度信息,然后显示输出在sogou地图上

1加载jqueryminjs

2加载jquerymobileminjs

3var gps = navigatorgeolocation;调用GPS

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>手机GPS定位获取</title>

        <script type="text/javascript" src="jqueryminjs"></script>

        <script type="text/javascript" src="jquerymobileminjs"></script>

        <script type="text/javascript" src=">

经过修改和验证可用,主要问题是你没有搞清楚 变量的作用域。对于鼠标点击事件的注册,你应该对每一个Marker注册,所以你生成marker 的时候应该把所有marker 放到一个数组中,再遍历marker进行注册。并且在响应函数中通过this调用对应的marker

                var markerArr = [  

                    { title: "张三",imageOffset: {width:0,height:3} , point: "115809905,2925332", address: "共青城", tel: "" } ,

                    { title: "张三",imageOffset: {width:0,height:3} , point: "11345208,2310967", address: "广州天河区黄村", tel: "" } ,

                    { title: "张三",imageOffset: {width:0,height:3} , point: "115941854,28674492", address: "南昌", tel: "" } ,

                    { title: "张三",imageOffset: {width:0,height:3} , point: "116647832,39907028", address: "北京", tel: "" } ,

                    { title: "张三",imageOffset: {width:0,height:3} , point: "113968664,22575749", address: "深圳", tel: "" }

                ];

                var markers=[];

var init = function() {

    var center = new qqmapsLatLng(29469459,116051127);

var map = new qqmapsMap(documentgetElementById('container'),{

center: center,

zoom: 6

});

    for (var i = 0; i < markerArrlength; i++) {  

var p0 = markerArr[i]pointsplit(",")[0];  

var p1 = markerArr[i]pointsplit(",")[1];

var marker = new qqmapsMarker({

map: map,

position: new qqmapsLatLng(p1,p0)

});

    markersetTitle(markerArr[i]address)

markerspush(marker);

     }

     

     for (var i = markerslength - 1; i >= 0; i--) {

       var marker=markers[i]

   qqmapseventaddListener(marker, 'click', function() {

   //通过this调用对应的marker

   var lat=thisgetPosition()lat

   var lng=thisgetPosition()lng

 infoopen(); 

 infosetContent('<div style="width:100px;height:100px; text-align:center;white-space:nowrap;margin:10px;">'+thisgetTitle()+'</div>');

 infosetPosition(new qqmapsLatLng(lat,lng)); 

 //consolelog(thisgetTitle())

 });

 }; consolelog(' addListener')

 var info = new qqmapsInfoWindow({

 map: map

 });

 

 consolelog('init map')

}

01var map = new BMapMap("Mapcontainer");

02 var JsonObj = eval(JsonStr);

03 if (JsonObj != null) {

04 for (var i = 0; i < JsonObjlength; i++) {

05 (function (x) {

06 var point = new BMapPoint(JsonObj[x]Visit_GPS_Longitude, JsonObj[x]Visit_GPS_Latitude); // 创建点坐标

07 mapcenterAndZoom(point, 13);

08 var marker = new BMapMarker(point);

09 var opts = {

10 width: 250, // 信息窗口宽度

11 height: 100, // 信息窗口高度

12 title: '<span style="font-size:15px;color:#0A8021">' + JsonObj[x]CustomerName + '</span>' // 信息窗口标题

13 }

14 //markersetAnimation(BMAP_ANIMATION_BOUNCE);

15 var content = "进店时间 " + JsonObj[x]VisitBeginTime + "<br/>离店时间 " + JsonObj[x]VisitEndTime;

16 var info_Window = new BMapInfoWindow(content, opts); // 创建信息窗口对象

17 markeraddEventListener("click", function () {

18 thisopenInfoWindow(info_Window);

19 });

20 mapaddOverlay(marker);

21 })(i);

22 }

23 mapaddControl(new BMapNavigationControl());

var map = new BMapMap("Mapcontainer");

var JsonObj = eval(JsonStr);

if (JsonObj != null) {

for (var i = 0; i < JsonObjlength; i++) {

(function (x) {

var point = new BMapPoint(JsonObj[x]Visit_GPS_Longitude, JsonObj[x]Visit_GPS_Latitude); // 创建点坐标

mapcenterAndZoom(point, 13);

var marker = new BMapMarker(point);

var opts = {

width: 250, // 信息窗口宽度

height: 100, // 信息窗口高度

title: '<span style="font-size:15px;color:#0A8021">' + JsonObj[x]CustomerName + '</span>' // 信息窗口标题

}

//markersetAnimation(BMAP_ANIMATION_BOUNCE);

var content = "进店时间 " + JsonObj[x]VisitBeginTime + "<br/>离店时间 " + JsonObj[x]VisitEndTime;

var info_Window = new BMapInfoWindow(content, opts); // 创建信息窗口对象

markeraddEventListener("click", function () {

thisopenInfoWindow(info_Window);

});

mapaddOverlay(marker);

})(i);

}

mapaddControl(new BMapNavigationControl()); 同样是一个循环,但是在循环中使用了一个匿名函数,从而造成一个闭包将 i 的值锁定在里面,这样外部的值已经变化,

但是传到闭包里面的值已经被保留,也就可以顺利拿到应该取到的address[i]的内容了。

这样虽然解决了问题,但是每添加一个点都会创建一个匿名函数,内存泄漏可能会是潜在隐患。

接下去, 我们就可以自由的在地图上标注点并显示对应的信息了!

百度地图添加覆盖物,拖放覆盖物获取当前的坐标,点击地图设置覆盖位置,也可以拖拽地图设置覆盖物位置

方法/步骤

<html>

<head>

<meta >

<!DOCTYPE html>

<html>

<head>

    <meta >

怎么能够在百度地图上显示我们单位的地理位置?

1、登陆自己的账号进入百度地图,在右上角有个商户免费标注:

2、输入一个公司位置,显示没有的话就可以在右边,如下图显示的新增标注按钮了

3、点选进来后,就要填写自己-标注位置-认领商户-丰富商户资讯。填写好了下面点选提交。就显示在稽核,这就完成了。

怎样在百度地图上显示酒店的地理位置

东莞市资丰制冷机电工程有限公司锏惧害鍦板浘

怎么让我的酒店位置在百度地图上显示

前提一,必须到工商注册(这个必有吧),前提二,酒店规模不能太小,弄的跟小旅馆似的肯定不行;有了这些,百度地图会不定期更新,不久你的酒店应该就会出现在百度地图上了

绝对原创,翻版必究!

想知道: 如何在百度地图上显示公司名称和地理位置?

把自己的公司名称标注上去 等待稽核通过就可以了,如果你不会我可以代作媒介匣

怎么通过座标在百度地图上显示出位置

1 注册百度账号,到百度地图的API申请个KEY,免费的key每天有固定的查询流量,付费就很多了。

2 申请了Key后,在你的Html 页面上引入js :

<script type=text/javascript src=:apimapbaidu/apiv=20&ak=您的金钥></script>

3

在HTML的Body中,放入一个div,用于显示地图的地方

<div id="allmap"></div>

4

写入显示到地图的图示js方法

<script type=text/javascript>

var map = new BMapMap("allmap");

var point = new BMapPoint(116400244,3992556);

mapcenterAndZoom(point, 12);

var marker = new BMapMarker(point); 建立标注

mapaddOverlay(marker); 将标注新增到地图中

markeraddEventListener("click",getAttr);

function getAttr(){

var p = markergetPosition(); 获取marker的位置

alert("marker的位置是" + plng + "," + plat);

}

</script>

5 储存后,开启您的HTML,介面将会显示出第四步的座标地址 Point(116400244,3992556);

6

点选地图上的红色图示地址,将呼叫刚才写的

function getAttr(){

var p = markergetPosition(); 获取marker的位置

alert("marker的位置是" + plng + "," + plat);

}

方法,d出提示框。

这个方法,看具体需要呼叫什么方法,就写什么内容喽。

至此,入参座标呼叫百度API显示到地图上的图示,方法实现。更多请检视百度API提供的方法,很丰富~

怎么通过座标在百度地图上显示出位置

:jingyanbaidu/article/ad310e80c652ff1849f49e90

怎么在百度地图上显示三个地点ABC的相对位置?

使用测距,可显示直线距离

怎么在百度地图上显示我的企业名字!

很简单,掏钱买百度的虚拟空间就行了。只要你掏了钱,百度的网管自然就会把你的企业名字,收在百度里,这样就可以在百度工具条里,搜寻到你的企业名字。

如何在百度地图上显示自己的位置

目前,只有百度手机地图可以,具体步骤如下:

1、开启手机百度地图app,确保网路、GPS处于开启状态。

2、稍微等待一下,地图上就会出现位置座标箭头。如果没有出现点选首页左下角的指南针标志。

怎么在百度地图上显示自己店铺

我们需要提交给百度地图去稽核,稽核时间是5天左右。另外注意的是必须有相关的证件才行。例如公司必须有公司的营业执照。

一定要注意:

1、营业执照必须清晰

2、名字需要和营业执照上吻合

3、如果是其他名字,需要有证明

以上就是关于javascript中鼠标在地图上的经纬度怎么获取全部的内容,包括:javascript中鼠标在地图上的经纬度怎么获取、如何在百度地图里面添加覆盖物,并且对每个覆盖物添加点击之后d出信息框的功能、jquery mobile 如何获取触摸的坐标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9671298.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存