文档章节

GIS(一)——在js版搜索地图上添加Marker标记

白志华
 白志华
发布于 2015/10/18 10:57
字数 625
阅读 14
收藏 0

       由于我们做的是有关于旅游方面的项目,所以涉及到了地图功能。我接到的其中一个任务就是,在地图上显示指定的几个景点,并在地图上加上标记。

       我们项目用的是搜狗地图,使用的是js版本。大家有兴趣的话,可以参考搜索地图api以及示例代码

       在地图上添加标记是地图的一个基本功能。这个标记叫做Marker。可以从这里看官网上对于Marker类的介绍。

       实现的基本步骤,首先在页面上创建一个地图,然后地图上添加一个marker。你可以对这个marker指定位置、显示内容,在地图上的显隐等。具体请看一下代码:

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>简单标记示例</title>

<link href="http://mfxuan.free.800m.net/blogCss/reset.css" type="text/css" rel="stylesheet" />
<link href="http://mfxuan.free.800m.net/blogCss/main.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://api.go2map.com/maps/js/api_v2.5.1.js"></script>
<!-- 定义地图等样式 -->
<style type="text/css">
html {height: auto;}
body {height: auto;margin: 0;padding: 0;}
#map_canvas {width:1000px;height: 600px;position: absolute;}
@media print {#map_canvas {height: 950px;}}
</style>
<script type="text/javascript">
  
  var p;//定义景点坐标数组
  var map;//定义地图对象
  var markers=[];//记录所有景点的Marker信息

  //初始化数据
  function initialize() {
	//将地图定位在海淀区域
    var point = new sogou.maps.Point(12939000,4840250);
    var myOptions = {
      zoom: 11,
      center: point
    }
    //加载并初始化地图
    map = new sogou.maps.Map(document.getElementById("map_canvas"), myOptions);

    //加载景点坐标值
	  loadScenic();
    
    //加载景点标记
    addmarker();
    
  }

  //加载标记 
  function addmarker(){
    for(var i=0;i<p.length;i++){
      var point = new sogou.maps.Point(p[i].x,p[i].y);
      //添加一个图标
      var image = '';//'http://api.go2map.com/maps/images/v2.0/flag.png';
      var marker = new sogou.maps.Marker({
        position: point,
        map: map,
        title:p[i].title,
        icon:image,
        visible:true
      });
      markers.push(marker);
    }
  }

  //加载景点坐标数据
  function loadScenic(){
  	p = [{x:12942902.5,y:4836960.5,title:'颐和园'},
	   	{x:12933625.5,y:4836929.5,title:'香山、植物园'},
	   	{x:12946300.5,y:4839226.5,title:'圆明园遗址公园'},
	   	{x:12948437.5,y:4826035.0,title:'玉渊潭公园'},
	   	{x:12950304.5,y:4829984.0,title:'北京海洋馆'},
	   	{x:12948074.5,y:4829765.0,title:'紫竹院公园'},
	   	{x:12922964.5,y:4853605.5,title:'凤凰岭自然风景区'}];
  }
</script>
</head>
<body onload="initialize()">
  <div id="map_canvas"></div>
</body>
</html>
       效果图:



       是不是很简单呢?其实有了这些,只是一个最简单的样式。在下一篇博文中,我们为他添添彩。敬请期待吧。

版权声明:本文为博主原创文章,未经博主允许不得转载。

本文转载自:http://blog.csdn.net/xiaoxian8023/article/details/38855281

共有 人打赏支持
白志华
粉丝 31
博文 265
码字总数 57524
作品 0
长沙
程序员
私信 提问
各家地图公司地图开发API比较

各家地图公司地图开发API比较 一、谷歌地图API地址:http://code.google.com/apis/maps/ 基于Google Maps,能够使用 JavaScript 将 Google Maps 嵌入网页中。API 提供了大量实用工具用以处理...

睡得
2015/05/25
2.5K
5
google 地图IE,火狐显示问题(在ie中点击美食显示不出来 在火狐中显示正常)

靠港 美食 您的位置: 首页 > 靠港 > 美食 中国 分类搜索 美食 地址:http://issconline.com/hyport.php?act=cook

sunyujun
2012/09/13
1K
2
基于Leaflet的地图GIS标记管理系统(面积、长度测量)

[概述] 本系统是基于Leaflet的地图GIS标注管理系统,基于在线的地图(支持离线地图),利用JavaScript实现画图(点、圆、多段线、多边形),能够实现面积测量、长度测量、能够实现标注对象的...

geliang123
2016/06/12
5
0
百度地图API显示多个标注点并添加百度样式检索窗口

<%@ page language="java" pageEncoding="UTF-8"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"......

zhwj407906450
2014/12/31
0
0
Ext JS 4即将正式发布,值得期待

Ext JS是一个针对Web的UI库。它是市场上的轻量级工具,它通过抽象,支持开发人员不必强制性地编写HTML的源代码,而且允许开发人员灵活的扩展组件库或者通过简单强大的插件架构创建真实的插件...

张金富
2011/11/04
0
2

没有更多内容

加载失败,请刷新页面

加载更多

多表查询

第1章 多表关系实战 1.1 实战1:省和市  方案1:多张表,一对多  方案2:一张表,自关联一对多 1.2 实战2:用户和角色 (比如演员和扮演人物)  多对多关系 1.3 实战3:角色和权限 (比如...

stars永恒
今天
7
0
求推广,德邦快递坑人!!!!

完全没想好怎么来吐槽自己这次苦逼的德邦物流过程了,只好来记一个流水账。 从寄快递开始: 2019年1月15日从 德邦物流 微信小app上下单,截图如下: 可笑的是什么,我预约的是17号上门收件,...

o0无忧亦无怖
昨天
7
0
Mac Vim配置

1.升级 vim   我自己 MacBook Pro 的系统还是 10.11 ,其自带的 vim 版本为 7.3 ,我们将其升至最新版: 使用 homebrew : brew install vim --with-lua --with-override-system-vim 这将下...

Pasenger
昨天
8
0
vmware安装Ubuntu上不了网?上网了安装不了net-tools,无法执行ifconfig?

1.重新设置网络适配器还是不行,如下指定nat 2.还需要指定共享网络,我是在无线环境下 3.无法执行ifconfig https://packages.ubuntu.com/bionic/net-tools到这个网站下载net-tools的deb文件...

noob_chr
昨天
6
0
解决SVN:E210007无法协商认证机制

svn:E210007 svn: Cannot negotiate authentication mechanism 执行下面代码即可 sudo yum install cyrus-sasl cyrus-sasl-plain cyrus-sasl-ldap...

临江仙卜算子
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部