我正在使用R传单,我添加了一个自定义按钮到Map使用'addEasyButton'。我已经拖网任何可能的来源,但无法找到一个建议的方式来创建一个鼠标悬停标签弹出我的新按钮。默认按钮(缩放“+”和“-”)以及重新居中Map,当你把鼠标悬停在它们上面时,所有的标签都会弹出。我检查了Chrome上的HTML,试图找到标准按钮和我的新按钮之间的区别,但没有成功。
在我的Shiny应用程序的“服务器”功能下,我有:
output$map <- renderLeaflet({
leaflet(options = leafletOptions(preferCanvas = TRUE)) %>%
# Center map on chosen feature
setView(lng = Centroid[1], lat = Centroid[2], zoom = 10) %>%
# Add OSM basemap
addProviderTiles(providers$OpenStreetMap.HOT, group = "Street Map",
options = providerTileOptions(updateWhenIdle = TRUE)) %>%
addEasyButtonBar(easyButton(id = 'Search',
icon = span(class = "star", HTML("⨁ id='Search' aria-label='Search'" )),
onClick = JS("function(btn, map){var mapsearch = {btn: 'btn1', map: 'map1', nonce: Math.random(), id: 'Search'};
Shiny.onInputChange('jsValue', mapsearch);}"))) %>%
addResetMapButton() %>%
addMouseCoordinates()
})
这个功能很好用,我成功地让我的按钮做了我想让它做的事情。挑战在于创建一个标签,当你用鼠标悬停在按钮上时,它会弹出。我使用shinyJS库,shiny库和库的传单集。
这是一个很小的问题,但是非常重要。任何帮助都将非常感激。我必须再次强调,这个问题与R和R环境有关,而不是纯粹的java脚本。我正在寻找一个解决方案,我可以在R环境中使用。
我试着用JS()函数拼接一些java脚本,但是没有成功。也许是因为我对javascript没有足够的知识或理解,或者是因为解决方案不应该在那里寻找--我不确定。我也涉猎了R的htmltools和htmlwidgets库,但是这些库对我来说是新的,我没有足够的经验去使它工作。
我只是想在鼠标悬停在按钮上时显示一个标签。该标签将用一个词告诉用户该按钮的功能。请记住,这不是一个“普通”按钮,而是一个添加了“addEasyButton”的按钮-因此它会出现在传单创建的Map上(而不是单独或旁边)。
1条答案
按热度按时间t40tm48m1#
从来没有用过这个包,但我只是看了一下文档,
easyButton
有一个title
参数。这就是你想要的。