1

我想在 Shiny 应用程序中为 navbarMenu 添加一个工具提示。这里问了类似的问题,但是没有答案。这是我的可重现代码

library(shiny)
library(shinyBS)

ui <- shinyUI(fluidPage(
       sidebarLayout( 
           sidebarPanel(),

           mainPanel(tabsetPanel(

             navbarMenu("Tab1",bsTooltip(id="Tab1", title="Short description  for the tab", trigger = "hover"), 
                 tabPanel("Tab1.1"),       
                 tabPanel("Tab1.2")),

            tabPanel("Tab2",tabsetPanel(
                       tabPanel("Tab2.1"),       
                       tabPanel("Tab2.2"))),

            tabPanel("Tab3",tabsetPanel(
                       tabPanel("Tab3.1"),
                       tabPanel("Tab3.2"),
                       tabPanel("Tab3.3")))
)))))
server <- function(input, output) {}
shinyApp(ui = ui, server = server)

在我的研究中,我发现了这个解决方案R Shiny: Use navbarPage with bsModal by shinyBS,但对于bsModel. 此外,这里提到了一个基于 java-script 的过程。我知道这两种解决方案都适用于 tabpanel,但我相信这是同一个问题,即 navbarMenu 和 tabpanel 没有 id。
我是统计学家,我没有 HTML 或 java 脚本背景来重写选项卡标题或 navbarMenu 的属性。我希望我能清楚地表达我的问题。提前感谢您的时间和善意的帮助。

4

1 回答 1

4

您可以使用 HTML wenn 传递选项卡的标题。在这种情况下,我只是将标题放在一个跨度中并添加了属性title,该属性是 HTML 使用默认鼠标悬停的属性。对我来说,尝试将它添加到 ShinyBS 上要简单得多。

library(shiny)
library(shinyBS)

ui <- shinyUI(fluidPage(
  sidebarLayout( 
    sidebarPanel(),

    mainPanel(tabsetPanel(

      navbarMenu(span("Tab1",title="Short description  for the tab" ),
                 tabPanel("Tab1.1"),       
                 tabPanel("Tab1.2")),

      tabPanel("Tab2",tabsetPanel(
        tabPanel("Tab2.1"),       
        tabPanel("Tab2.2"))),

      tabPanel("Tab3",tabsetPanel(
        tabPanel("Tab3.1"),
        tabPanel("Tab3.2"),
        tabPanel("Tab3.3")))
    )))))
server <- function(input, output) {}
shinyApp(ui = ui, server = server)

希望这可以帮助!

于 2017-11-27T10:36:42.303 回答