vue+openlayer5获取当前鼠标滑过的坐标实现方法

编辑: admin 分类: javascript 发布时间: 2022-03-30 来源:互联网

前言:       

 在vue项目中怎么获取当前鼠标划过的坐标呢,这里来分享下方法。 实现效果:

实现步骤:

1、引入相关文件

import MousePosition from 'ol/control/MousePosition';
import {createStringXY} from 'ol/coordinate';

 2、生成地图

var layers = [
        //深蓝色背景
        new TileLayer({
           source: new XYZ({
             url:
              "https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}",
           }),
         }),
       
      ];
this.map = new Map({
        layers: layers,
        target: "map",
        view: new View({
          center: this.center,
          projection: this.projection,
          zoom: this.centerSize,
          maxZoom: 17,
          minZoom: 5,
          extent: [
            73.32783475401652, 3.33795, 135.16017906160056,
            53.83501005646246,
          ],
        }),
      });

3、加入鼠标事件

var mousePositionControl = new MousePosition({
         coordinateFormat: createStringXY(6),//获取位置
         projection: 'EPSG:4326',
         className: 'custom-mouse-position',
         target: document.getElementById('mouse-position'), //将位置数据放到那里
         undefinedHTML: '&nbsp'
      });
      this.map.addControl(mousePositionControl);

4、页面上加入

<div id="map" class="map" ref="imageDom">
 
    位置div
    <div id="mouse-position" style="
        color: #fff;
        position: absolute;
        bottom:10px;
        right:10px;
        z-index: 10000000;
        width: 200px;
        line-height: 30px;
        background: rgba(0,0,0,0.5);
    "></div>
</div>

到此这篇关于vue+openlayer5获取当前鼠标滑过的坐标的文章就介绍到这了,更多相关vue+openlayer5鼠标坐标内容请搜索海外IDC网以前的文章或继续浏览下面的相关文章希望大家以后多多支持海外IDC网!