添加弹出框
EvoMap JS API中,使用EM.overlay.Popup
类来创建一个弹框对象,然后通过地图对象上的addOverlay
方法将弹出框添加到地图上。
初始化地图
确保你已经引入了 EvoMap 的相关库,并且已经初始化了一个地图实例 map
。
let map = new EM.Map("map", {
zoom: 18, // 地图缩放级别
center: [460, 184, 0], // 地图中心位置
pitch: 55, // 地图倾斜角度
});
创建并配置弹出窗口
使用EM.overlay.Popup
类创建一个新的弹出窗口实例,并配置其属性。
let popup = new EM.overlay.Popup({
offset: [-3, -40], // 弹出窗口的偏移量
positioning: "center-center", //弹窗相对于锚点的定位
detectConflict: true //弹框是否与其他弹框进行冲突检测,防止弹框重叠,默认为false
});
将弹出窗口添加到地图
使用 map.addOverlay
方法将创建的弹出窗口添加到地图上。
map.addOverlay(popup);
设置弹出窗口的内容和位置
使用setContent
、setTitle
和setPosition
方法来设置弹出窗口的内容、标题和位置。
方法一:
popup
.setContent("这是个简单内容弹出框") // 设置弹出窗口的内容
.setTitle("标题") // 设置弹出窗口的标题
.setPosition([460, 184, 0]); // 设置弹出窗口的位置
方法二:
popup.setContent("这是个简单内容弹出框"); // 设置弹出窗口的内容
popup.setTitle("标题") // 设置弹出窗口的标题
popup.setPosition([460, 184, 0]); // 设置弹出窗口的位置
完整代码示例
以下是完整的代码示例:
// 初始化地图
let map = new EM.Map("map", {
zoom: 18,
center: [460, 184, 0],
pitch: 55,
enableZoom: true,
enableRotate: true,
enablePan: true,
});
// 创建弹出窗口
let popup = new EM.overlay.Popup({
offset: [-3, -40],
});
// 将弹出窗口添加到地图
map.addOverlay(popup);
// 设置弹出窗口的内容和位置
popup
.setContent("这是个简单内容弹出框")
.setTitle("标题")
.setPosition([460, 184, 0]);
注意事项
弹出窗口的内容 (setContent) 和标题 (setTitle) 可以根据实际需求进行修改。 弹出窗口的位置 (setPosition) 应与地图的中心或感兴趣的点对齐。