将不同的弹出式iframe添加到多个点

时间:2018-04-12 18:43:06

标签: r iframe r-leaflet r-mapview

我正在使用mapview R包构建地图 this tutorial。使用popup=popupImage(images,src = "remote")为每个点添加不同的图像可以正常工作。

问题在于iframe弹出窗口。

使用popup = mapview:::popupIframe("https://www.youtube.com/embed/iApz08Bh53w?autoplay=1", width = 300, height = 225)的示例仅适用于单个点。如果我合并多个iframe视频链接(与图片链接一样显示),则将所有视频iframe 添加到每个点。

如何为每个点添加不同的 iframe?

1 个答案:

答案 0 :(得分:2)

以下是如何做到这一点的一个例子。

library(mapview)

# some example points
pts = breweries[1:2, ]

# some urls - note this cannot be a named list, javascript does not like names!
urls = list(
  "https://www.youtube.com/embed/iApz08Bh53w?autoplay=1",
  "https://www.youtube.com/embed/KEkrWRHCDQU?autoplay=1"
)

# create the popups
pop = lapply(urls, mapview:::popupIframe)

# et voila
mapview(pts, popup = pop)

popupIframe函数当前没有矢量化,因此我们需要使用lapply在列表中创建弹出对象。