You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shiny Dashboard切换标签页时自动定位到页面顶部的问题求解

解决方案

你已经在项目中引入了shinyjs依赖,只需要在原有监听侧边栏切换的逻辑中新增一行执行滚动的JS代码即可实现需求,切换标签时会自动定位到页面顶部。

修改后的服务端代码如下:

server <- function(input,output,session){
  
  observeEvent(input$mysidebar,
               {
                 # 切换标签时滚动到页面顶部
                 runjs("window.scrollTo(0, 0);")
                 # 原有侧边栏自动收起逻辑
                 addClass(selector = "body", class = "sidebar-collapse")
                 removeClass(selector = "body", class = "sidebar-open")
               }
  )
}

修改后直接运行即可生效,不会影响你已有的头部固定、侧边栏自动收起功能。如果不想用shinyjs实现,也可以直接在UI的tags$script中添加原生JS监听标签切换事件,上述方案是改动最小的实现方式。


内容的提问来源于stack exchange,提问作者Devin Werner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 16:15:02