百度地图 画圆半径改变触发事件

在业务处理中出现一个需求,要求在百度地图中画圆。并且在改变圆的半径后需要触发相关的事件!研究了一下百度地图js的API。貌似并没有相关的监听事件,遂通过一系列的逻辑判定来实现相关的功能。




    
    
    
    
    
    圆形半径改变监听


原理

lineupdate事件在不断改变圆形半径时会不断的触发,但是此时onmouseout不会随着lineupdate事件的触发而触发.而是需要等到松开鼠标并且离开圆的时候才会统一触发(重点:松开并离开圆形).
就是说当你松开鼠标并离开圆的时候会触发多个onmouseout事件,但是这个时候多个onmouseout中的圆的属性都是相同的(至少笔者没有发现什么不同,如果各位看官有新的发现,欢迎留言).之所以要加一个if(circle.getRadius() == pd.getRadius() )主要是为了避免特殊的情况发生,从而导致业务逻辑错误!然后在通过中间变量来控制第一个onmouseout事件来实现想要的结果,其余的onmouseout就放弃掉!
如果各位有更好的方法,欢迎留言!

你可能感兴趣的:(百度地图 画圆半径改变触发事件)