百度地图Label绑定mouseover方法重复调用怎么解决

问题描述

项目中有一个地图找房功能,鼠标悬浮到覆盖层上显示行政区,移开取消行政区,类似下图,
因为用到了百度地图,查了api用文本标签label实现的覆盖层,后来发现label不支持mouseenter方法,
只有mouserover方法,但是用mouseover方法又会出问题,鼠标移动会一直重复添加行政区,
自己用flag做判断也没有用,还是会重复执行。

求大佬指点怎么让mouseover不重复执行,或者指出我的思路有什么问题,应该怎么实现,万分感激!

   label.onmouseover = function (e) {        console.log(task)        if (task) {            var lab = e.currentTarget;
                getBoundary(lab);
                task = false;
            }
        };


https://img2.mukewang.com/5b8baa8e000193b307590610.jpg

慕斯709654
浏览 1773回答 1
1回答

素胚勾勒不出你

lablel加一个状态判断已经enter了。label.enter = false label.onmouseover = function (e) {    if (label.enter ) {        return     }    label.enter = true    console.log(task)     if (task) {         var lab = e.currentTarget;             getBoundary(lab);             task = false;         }     }; }然后mouseout的时候把这个状态置为false
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Node.js