本文章简单的介绍了一下关于百度地图的应用,这里我介绍一个功能就是在自己定的层上给加个事件方法,有需要的参考一下。
给marker、lable、circle等Overlay添加事件很简单,直接addEventListener即可。那么,自定义覆盖物的事件应该如何添加呢?我们一起来看一看~
-----------------------------------------------------------------------------------------一、定义构造函数并继承Overlay代码如下 | 复制代码 |
// 定义自定义覆盖物的构造函数 function SquareOverlay(center, length, color){ this._center = center; this._length = length; this._color = color; } // 继承API的BMap.Overlay |
代码如下 | 复制代码 |
// 实现初始化方法
Copy after login
|
代码如下 | 复制代码 |
// 实现绘制方法
Copy after login
|
代码如下 | 复制代码 |
//添加自定义覆盖物
Copy after login
|
代码如下 | 复制代码 |
SquareOverlay.prototype.show = function(){
Copy after login
|
代码如下 | 复制代码 |
mySquare.show();
Copy after login
|
// 实现隐藏方法
代码如下 | 复制代码 |
SquareOverlay.prototype.hide = function(){ if (this._div){ this._div.style.display = "none"; } } |
mySquare.hide();
代码如下 | 复制代码 |
SquareOverlay.prototype.yellow = function(){
Copy after login
|
mySquare.yellow();
代码如下 | 复制代码 |
Copy after login
|
代码如下 | 复制代码 |
// 实现显示方法
Copy after login
|
代码如下 | 复制代码 |
SquareOverlay.prototype.addEventListener = function(event,fun){
Copy after login
|
代码如下 | 复制代码 |
mySquare.addEventListener('click',function(){
Copy after login
|
代码如下 | 复制代码 |
mySquare.addEventListener('mousemover',function(){
Copy after login
|
代码如下 | 复制代码 |
1 2 3 4 5 6 7 8 9 10
15 16 17 |