添加弹出框

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);

设置弹出窗口的内容和位置

使用setContentsetTitlesetPosition方法来设置弹出窗口的内容、标题和位置。

方法一:

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) 应与地图的中心或感兴趣的点对齐。

results matching ""

    No results matching ""