你可以通过 BMap.Label在地图上添加文本标注,展示文本。
如下示例,向地图添加了一个文本标注,并使用默认的标注样式:
var point = new BMap.Point(116.404, 39.915);var content = 'label';var label = new BMap.Label(content, {// 创建文本标注position: point, // 设置标注的地理位置offset: new BMap.Size(10, 20), // 设置标注的偏移量});map.addOverlay(label); // 将标注添加到地图中
JSAPI支持监听覆盖物的事件。
label.addEventListener("click", function(){alert("您点击了标注");});
创建 Label 时,可以通过第二个参数设置标注的属性,常用属性如下:
position:设置标注的地理位置。属性值需要是 BMap.Point 实例。
offset:设置标注相对于地理位置的像素偏移量。属性值需要是 BMap.Size 实例。
var label = new BMap.Label('文本标注', {position: new BMap.Point(116.404, 39.915),offset: new BMap.Size(10, 20)});map.addOverlay(label);
标注添加到地图后,可以通过实例方法动态更新内容、位置和偏移量。
label.setContent('新的文本内容');label.setPosition(new BMap.Point(116.414, 39.925));label.setOffset(new BMap.Size(20, 30));
setAnchor 用于动态设置标注的锚点位置。可选值请参考 BMap.ControlAnchor。
label.setAnchor(BMAP_ANCHOR_TOP_LEFT);
更多参考:设置文本标注的锚点
上一篇
下一篇