代码之家  ›  专栏  ›  技术社区  ›  Laura

在R/Shiny点击图像更改选项卡面板如下

  •  1
  • Laura  · 技术社区  · 1 年前

    我正在构建一个Shiny应用程序,我的一些用户(不太熟悉这种布局)不明白该应用程序可以使用选项卡,他们只是不知道该从主页转到哪里。

    这就是为什么我想在主页上显示一个大的信息图,当他们点击它时,它会自动激活第二个选项卡。我知道如何添加图像链接:

    tags(a(img(src="image.png"), href="link.com"))
    

    我知道如何以编程方式选择不同的选项卡:

    updateTabsetPanel(session, inputId="navbar", selected="tab2")
    

    但是如何将这两个动作结合起来呢? 谢谢

    0 回复  |  直到 6 年前
        1
  •  4
  •   Florian    6 年前

    你可以给图片一个 id ,并使用 onclick() 函数来自 shinyjs .工作示例:

    require(shiny)
    require(shinyjs)
    
    
    ui <- fluidPage(
      img(id="my_img",src="image.png",style="cursor:pointer;"),
      useShinyjs(),
      tabsetPanel(id="navbar",
                  tabPanel("tab1", p("This is tab 1")),
                  tabPanel("tab2", p("This is tab 2"))
      )
    )
    
    
    
    server <- function(input, output,session){
    
      shinyjs::onclick("my_img",  updateTabsetPanel(session, inputId="navbar", selected="tab2"))
    
    }
    
    shinyApp(ui,server)
    

    希望这能有所帮助!