首页 / 浏览问题 / 其他 / 问题详情
supermap点击事件无法触发
209EXP 2018年07月23日
this.map.events.on({"click": this.mapClicked})

这个click事件在我浏览器选择toggle device toolbar 模式的时候,在地图上绑定click事件的时候没有办法触发,

我用的是supermap 8c 请问一下有什么好的解决方法吗???

1个回答

您是用移动端代码还是PC端代码?
5,668EXP 2018年07月23日
PC端代码
您是在PC端去看这个网页的话应该是可以的,如果您想查看的是移动端查看网页的效果需要使用移动端开发。
使用PC端切换到toggle device toolbar模式,不还是应该使用PC端代码吗?

我现在PC端使用普通的模式是可以出发click事件,就是切换到toggle device toolbar模式,无法触发地图的click事件,这个应该不用使用移动端开发吧?

您好,应该是代码问题,我自己的代码点击事件可以正常运行。

不行,没有办法触发mapClicked 方法,普通模式是可以的,切换到toggle device toolbar模式,就不行了,你试验的时候浏览器切换到toggle device toolbar模式吗??

代码如下:

<script src='../libs/SuperMap.Include.js'></script>
<script type="text/javascript">
var map, layer,
url="http://localhost:8090/iserver/services/maps/rest/maps/World";
function init(){   
    var panZoombar = new SuperMap.Control.PanZoomBar({
        // 是否显示滑动条
        showSlider : true,
        // 滑动条的长度
        sliderBarHeight : 255
    });
   
   
 map = new SuperMap.Map("map", {
     controls : [
              panZoombar,
              new SuperMap.Control.ScaleLine(),
              new SuperMap.Control.Navigation()],
     numZoomLevels : 16       //设定缩放级别
    
 });
 layer = new SuperMap.Layer.TiledDynamicRESTLayer("World", url, {transparent: true, cacheEnabled: true},{maxResolution:"auto"});
 layer.events.on({"layerInitialized":addLayer});//图层加载完毕

}
function addLayer(){
 map.addLayer(layer);
 map.setCenter(new SuperMap.LonLat(0,0), 1);
}
function drawClick(){
 console.log('drawClick');
 map.events.on({"click": this.mapClicked});
}
function mapClicked(evt){
 console.log('mapClicked');
}

</script>
</head>
<body onload="init()">
 <div id="map" style="width:1000px;height:300px"></div>
 <input type="button" class="btn" value="点击" onclick="drawClick()" />

</body>

您好!我尝试了一下,发现可能是有一些系统问题,您方便的话留一下邮箱,等有了解决方法之后联系您。
你好,我的邮箱是:1733856225@qq.com
请问一下,这个问题有 什么解决方案吗??
...