将工具提示添加到Shiny中的navbarMenu

时间:2017-11-27 10:22:18

标签: r shiny shinyjs shinybs

我想在Shiny app中为navbarMenu添加工具提示。类似的问题问here,但没有答案。这是我可重现的代码

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。 此外,有一个提到here的程序,它基于java脚本。我知道这两个解决方案都适用于tabpanel,但我相信它是同样的问题,即navbarMenu和tabpanel没有一个身份 我是统计学家,我没有HTML或java脚本的背景来重写标签标题或navbarMenu的属性。 我希望我能以清楚的方式表达我的问题。在此先感谢您的时间和善意的帮助。

1 个答案:

答案 0 :(得分:4)

您可以使用HTML wenn传递标签的标题。在这种情况下,我只是在一个范围内查看标题并添加了属性title,这是HTML用于鼠标悬停的默认属性。对我来说,试图将它添加到有光泽的BS上是非常麻烦的。

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)

希望这有帮助!