是否可以在OpenLayers中为ZoomToExtent添加图标?默认值为';E';

是否可以在OpenLayers中为ZoomToExtent添加图标?默认值为';E';,openlayers,Openlayers,我正在尝试添加一个图标来代替“E”。我搜索了OpenLayers的文档,但没有找到。如有任何建议,将不胜感激 this.map = new Map({ controls: defaultControls({ attribution: false, rotate: false }).extend([ new FullScreen(), new ZoomToExtent({ extent: zoomToCenter, label:

我正在尝试添加一个图标来代替“E”。我搜索了OpenLayers的文档,但没有找到。如有任何建议,将不胜感激

  this.map = new Map({
    controls: defaultControls({ attribution: false, rotate: false }).extend([
      new FullScreen(),
      new ZoomToExtent({
        extent: zoomToCenter,
        label: 'E',
        tipLabel: 'Zoom Extent'  

      })

是的,您可以将
label
设置为某些
HTMLElement

发件人:

新的缩放范围(可选选项)

选项:
姓名:  标签
类型:  字符串|HTMLElement
违约: 'E'
描述:
用于按钮的文本标签也可以使用元素(如span元素)代替文本。


我知道这是一个老问题,但当我遇到类似的问题时,我会尝试给未来的读者一个完整的答案

正如@barbsan所说,您可以将一个HtmleElement传递给label witch,它不是一个包含一些HTML标记的简单字符串,而是一个必须从DOM获取或创建的对象:

var customLabel = document.createElement('span');
//Do your DOM manip here to add classes or innerHtml
this.map = new Map({
    controls: defaultControls({ attribution: false, rotate: false }).extend([
      new FullScreen(),
      new ZoomToExtent({
        extent: zoomToCenter,
        label: customLabel,
        tipLabel: 'Zoom Extent'  
    })
})

当我试图将span标记放入标签时,它被当作字符串。你能给我看看真正有用的样品吗。