Add SEO metadata and security headers

This commit is contained in:
2026-05-23 11:17:29 +08:00
parent cc65395b59
commit 582a4214b6
40 changed files with 15323 additions and 5 deletions
@@ -0,0 +1,71 @@
# 右键菜单 (ContextMenu)
右键菜单可以绑定到地图底图或覆盖物上,提供快捷操作功能。
## 创建菜单
```javascript
// 创建右键菜单实例
const contextMenu = new AMap.ContextMenu();
// 添加菜单项
contextMenu.addItem('放大一级', function() {
map.zoomIn();
}, 0); // 第三个参数是排序权重
contextMenu.addItem('缩小一级', function() {
map.zoomOut();
}, 1);
contextMenu.addItem('设置中心点', function() {
map.setCenter(contextMenuPos); // 使用保存的点击位置
}, 2);
```
## 绑定事件
### 1. 绑定到地图
```javascript
let contextMenuPos;
map.on('rightclick', function(e) {
contextMenuPos = e.lnglat; // 记录右键点击的位置
contextMenu.open(map, e.lnglat);
});
```
### 2. 绑定到覆盖物 (如 Marker)
```javascript
const marker = new AMap.Marker({
position: [116.397, 39.909]
});
map.add(marker);
const markerMenu = new AMap.ContextMenu();
markerMenu.addItem('删除标记', function() {
map.remove(marker);
});
marker.on('rightclick', function(e) {
markerMenu.open(map, e.lnglat);
});
```
## 动态菜单
你可以在事件回调中动态修改菜单项。
```javascript
map.on('rightclick', function(e) {
contextMenu.removeItem('添加标记', function(){}); // 先移除旧的(如果需要)
// 根据条件动态添加
if (map.getZoom() < 10) {
contextMenu.addItem('缩放至详细级别', () => map.setZoom(15), 0);
}
contextMenu.open(map, e.lnglat);
});
```