library(shiny)
library(shinyjs)
ui <- fluidPage(
useShinyjs(),
navbarPage("",
tabPanel("tab",
div( id ="Sidebar",sidebarPanel(div(
id = "tab1-scrollspy",
class = "potential-scrollspy",
tags$ul(
class = "nav nav-pills nav-stacked",
tags$li(tags$a(href = "#section1-1", "Apple")),
tags$li(tags$a(href = "#section1-2", "Bananas")),
tags$li(tags$a(href = "#section1-3", "Oranges")),
tags$li(tags$a(href = "#section1-4", "Cherries"))
)
)
)),
mainPanel(
actionButton("toggleSidebar", "", icon = icon("arrow-alt-circle-left"))
)
)
)
)
server <-function(input, output, session) {
observeEvent(input$toggleSidebar, {
shinyjs::toggle(id = "Sidebar")
if(input$toggleSidebar %% 2 == 1){
updateActionButton(session, "toggleSidebar", icon = icon("arrow-alt-circle-right"))
}else{
updateActionButton(session, "toggleSidebar", icon = icon("arrow-alt-circle-left"))
}
}, ignoreInit = TRUE)
}
shinyApp(ui, server)