openlayer4中获取地图坐标的方法

来源:互联网 发布:网络语言 英文 编辑:程序博客网 时间:2024/06/07 07:09
<!DOCTYPE html><html><head>    <title>WFS</title>    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">    <link rel="stylesheet" href="ol.css" type="text/css">    <script src="ol-debug.js"></script>    <script src="jquery.min.js"></script></head><body><div id="map" style="width: 100%"></div><script type="text/javascript">    var map = new ol.Map({        layers: [            new ol.layer.Tile({                source: new ol.source.OSM()            })        ],        target: 'map',        view: new ol.View({            center: ol.proj.transform(                [104, 30], 'EPSG:4326', 'EPSG:3857'),            zoom: 10        })    });    // 监听singleclick事件    /*   map.on('click', function(event){        //alert('触发点击事件' + event.clientX);  event.clienX 为undefined        var t = ol.proj.transform(map.getEventCoordinate(event), 'EPSG:3857', 'EPSG:4326')        alert(t);    })*/  $("#map").click(function (e) {     // alert('X ; '+ e.clientX  + 'Y: '+e.clientY);      var t = ol.proj.transform(map.getEventCoordinate(e), 'EPSG:3857', 'EPSG:4326');      alert(t);  })</script></body></html>

注意:使用openlayer自带的注册事件函数ol.map.on(‘click’,function(e))
会使e.clientX为undefined,而源代码中使用了e.clientX,故返回NaN。
故自己注册事件。