實例方法
| 實例方法 | 描述 |
|---|---|
| addListener | 新增地標的事件監聽器。 |
| removeListener | 移除地標的事件監聽器。 |
| setAnimation | 設定地標的動畫。 |
| setAltitude | 設定地標的海拔高度。 |
| addClassName | 添加地標的 className。 |
| removeClassName | 移除地標的 className。 |
| toggleClassName | 切換地標的 className。 |
| setDraggable | 設定地標是否可拖曳。 |
| setClickable | 設定地標是否可點選。 |
| remove | 移除地標。 |
addListener
addListener(type, listener)
新增地標的事件監聽器。
參數
- type
(string): 事件類別,與 DOM 原生事件一致。 - listener
(function): 需事件綁定的函數。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 新增事件
marker.addListener('click', () => {
console.log('Marker Is On Click!');
});
removeListener
removeListener(type, listener)
移除地標的事件監聽器。
參數
- type
(string): 事件類別,與 DOM 原生事件一致。 - listener
(function): 需解除事件綁定的函數。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 地標點選函數
const markerOnClick = () => {
console.log('Marker Is On Click!');
}
// 新增事件
marker.addListener('click', markerOnClick);
// 移除事件
marker.removeListener('click', markerOnClick);
setAnimation
setAnimation(animation)
設定地標的動畫。
參數
- animation
(object): 動畫類型,可套用mapPlus.Animation.BOUNCE與mapPlus.Animation.DROP。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 新增動畫
marker.setAnimation(mapPlus.Animation.BOUNCE);
setAltitude
setAltitude(altitude)
設定地標的海拔高度。
參數
- altitude
(number): 海拔高度,單位為公尺。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 設定海拔高度
marker.setAltitude(50);
addClassName
addClassName(className)
添加地標的 className。
參數
- className
(string): 要添加的className。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 添加地標 className
marker.addClassName('customize-marker');
removeClassName
removeClassName(className)
移除地標的 className。
參數
- className
(string): 要移除的className。
範例
// 新增地標
const marker = new mapPlus.Marker({
className: 'customize-marker',
position: [121.52212916930945, 25.027326932236182],
});
// 移除地標 className
marker.removeClassName('customize-marker');
toggleClassName
toggleClassName(className)
添加或移除地標的 className,取決於地標目前是否有該 className。
參數
- className
(string): 要切換的className。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 點選地標,切換 className
marker.addListener('click', () => {
marker.toggleClassName('customize-marker');
});
setDraggable
setDraggable(isDraggable)
設定地標是否可拖曳。
參數
- isDraggable
(boolean): 是否可進行拖曳。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 設定可拖曳
marker.setDraggable(true);
setClickable
setClickable(isClickable)
設定地標是否可點選。
參數
- isClickable
(boolean): 是否可進行點選。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 設定不可點選
marker.setClickable(false);
remove
remove()
移除地標。
範例
// 新增地標
const marker = new mapPlus.Marker({
position: [121.52212916930945, 25.027326932236182],
});
// 移除地標
marker.remove();