首页 > 网站 > WEB开发 > 正文

高德地图根据关键词坐标拾取小工具

2024-04-27 14:32:16
字体:
来源:转载
供稿:网友
高德地图根据关键词坐标拾取小工具

今天早上在写代码的时候,需要用到地图坐标拾取工具,我们用的是搞的地图,在高德地图API官方网站中没有找到相关的坐标拾取工具。在网上找到这么个小工具,与大家分享下!

CSS
 1  html { background-color: #fff; } 2         body, div, h1, h2, h3, h4, ul, li, form, input, dl, dt, dd, p { margin: 0; padding: 0; font-family: 微软雅黑; } 3         h3 { +font-size:14px; _font-size: 14px; } 4         img { border: none; } 5         .c { clear: both; } 6         ul, ol, li { list-style: none; } 7         .clearfix:after { content: "."; visibility: hidden; display: block; height: 0; overflow: hidden; clear: both; } 8         * html .clearfix { height: 1%; } 9         * + html .clearfix { height: 1%; }10         body { font: 12px/1.5em 微软雅黑,Arial,Verdana,Helvetica,sans-serif; color: #333; }11         button, input, select, textarea { color: #999; }12         input[type="button"] { padding: 0 5px; color: #333; }13         .demo_box { width: 360px; }14         #iCenter { width: 100%; height: 100%; border: 1px solid #F6F6F6; }15         #r_title { line-height: 28px; padding-left: 5px; background-color: #D1EEEE; font-weight: bold; }16         #result { overflow: auto; margin-bottom: 5px; /*    width:661px;*/ height: 500px; }17         #result .sub_result { font-size: 12px; cursor: pointer; line-height: 20px; /*padding:0px 0 4px 2px;*/ border-bottom: 1px solid #C1FFC1; }18         #result .sub_result .detail { }19         #result .sub_result .detail h3 { color: #00A6AC; }20         a { color: #067EC0; text-decoration: none; }21         a:hover { text-decoration: underline; }22         .note { color: #999; }23         div.change { background-image: url(http://pages.haozu.ajkcdn.com/20110909/img/map/marker-h.png); }24         div.change div { background-image: url(http://pages.haozu.ajkcdn.com/20110909/img/map/marker-h-l.gif); }25         .markerContentStyle { position: relative; }26         .markerContentStyle span { background-color: #FFFFFF; color: #FF1493; width: 120px; heigth: 80px; border: 2px solid #D8BFD8; FONT-FAMILY: 华文行楷; position: absolute; top: -10px; left: 25px; white-space: nowrap -webkit-border-radius:5px; border-radius: 5px; }27         div.info { position: relative; z-index: 100; border: 1px solid #BCBCBC; box-shadow: 0 0 10px #B7B6B6; border-radius: 8px; background: rgb(255,255,255); /* The Fallback */ background-color: rgba(255,255,255,0.9); transition-duration: 0.25s; }28         div.info:hover { box-shadow: 0px 0px 15px #0CF; }29         div.info-top { position: relative; background: none repeat scroll 0 0 #F9F9F9; border-bottom: 1px solid #CCC; border-radius: 5px 5px 0 0; }30         div.info-top div { display: inline-block; color: #333333; font-size: 14px; font-weight: bold; line-height: 31px; padding: 0 10px; }31         div.info-top img { position: absolute; top: 10px; right: 10px; transition-duration: 0.25s; }32         div.info-top img:hover { box-shadow: 0px 0px 5px #000; }33         div.info-middle { font-size: 12px; padding: 10px; line-height: 21px; }34         div.info-bottom { height: 0px; width: 100%; clear: both; text-align: center; }35         div.info-bottom img { position: relative; z-index: 104; }36         table { height: 100%; }37         html, body { height: 100%; margin: 0px; padding: 0px; }38         .STYLE1 { color: #F3F3F3; }
View Code

JS
 1 var mapObj; 2         var marker = new Array(); 3         var windowsArr = new Array(); 4         //基本地图加载 5         function mapInit() { 6             mapObj = new AMap.Map("iCenter"); 7             //AMap.event.addListener(mapObj,'click',getLnglat); 8         } 9         function placeSearch() {10             var MSearch;11             mapObj.plugin(["AMap.PlaceSearch"], function () {12                 MSearch = new AMap.PlaceSearch({ //构造地点查询类13                     pageSize: 10,14                     pageIndex: 1,15                     city: "021" //城市16                 });17                 AMap.event.addListener(MSearch, "complete", keyWordSearch_CallBack);//返回地点查询结果18                 var searchName = document.all.searchText.value;//查询关键字19                 MSearch.search(searchName); //关键字查询20             });21         }22         //添加marker&infowindow23         function addmarker(i, d) {24             var lngX = d.location.getLng();25             var latY = d.location.getLat();26             var markerOption = {27                 map: mapObj,28                 icon: "http://webapi.amap.com/images/" + (i + 1) + ".png",29                 position: new AMap.LngLat(lngX, latY)30             };31 32             var mar = new AMap.Marker(markerOption);33             marker.push(new AMap.LngLat(lngX, latY));34 35             var infoWindow = new AMap.InfoWindow({36                 content: "<h3><font color=/"#00a6ac/">  " + (i + 1) + ". " + d.name + "</font></h3>" + TipContents(d.type, d.address, d.tel),37                 size: new AMap.Size(300, 0),38                 autoMove: true,39                 offset: new AMap.Pixel(0, -30)40             });41             windowsArr.push(infoWindow);42             var aa = function (e) { infoWindow.open(mapObj, mar.getPosition()); };43             AMap.event.addListener(mar, "click", aa);44             AMap.event.addListener(mar, 'click', getLnglat);45         }46         //回调函数47         function keywordSearch_CallBack(data) {48             var resultStr = "";49             var poiArr = data.poiList.pois;50             var resultCount = poiArr.length;51             for (var i = 0; i < resultCount; i++) {52                 resultStr += "<div id='divid" + (i + 1) + "' onclick='openMarkerTipById1(" + i + ",this)' onmouSEOut='onmouseout_MarkerStyle(" + (i + 1) + ",this)' style=/"font-size: 12px;cursor:pointer;padding:0px 0 4px 2px; border-bottom:1px solid #C1FFC1;/"><table><tr><td><img src=/"http://webapi.amap.com/images/" + (i + 1) + ".png/"></td>" + "<td><h3><font color=/"#00a6ac/">名称: " + poiArr[i].name + "</font></h3>";53                 resultStr += TipContents(poiArr[i].type, poiArr[i].address, poiArr[i].tel) + "</td></tr></table></div>";54                 addmarker(i, poiArr[i]);55             }56             mapObj.setFitView();57             document.getElementById("result").innerHTML = resultStr;58 59         }60         function TipContents(type, address, tel) {  //窗体内容61             if (type == "" || type == "undefined" || type == null || type == " undefined" || typeof type == "undefined") {62                 type = "暂无";63             }64             if (address == "" || address == "undefined" || address == null || address == " undefined" || typeof address == "undefined") {65                 address = "暂无";66             }67             if (tel == "" || tel == "undefined" || tel == null || tel == " undefined" || typeof address == "tel") {68                 tel = "暂无";69             }70             var str = "  地址:" + address + "<br />  电话:" + tel + " <br />  类型:" + type;71             return str;72         }73         function openMarkerTipById1(pointid, thiss) {  //根据id 打开搜索结果点tip74             thiss.style.background = '#CAE1FF';75             windowsArr[pointid].open(mapObj, marker[pointid]);76 77             //result中每个div触发的事件78             document.getElementById("lngX").value = marker[pointid].getLng();79

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表