我正在构建一个有很多条件面板的闪亮应用程序。我在应用程序中有一个后退按钮,可以在条件面板之间导航。我想禁用Web浏览器后退按钮,因为单击该按钮会转到上一个网页(远离我的应用程序)。有没有办法做到这一点?
答案 0 :(得分:3)
您可以编写一些javascript
来执行此操作。这里我有两个例子,请注意我只在Chrome
示例1 会在浏览器中激活back
按钮时返回消息
rm(list = ls())
library(shiny)
jscode <- 'window.onbeforeunload = function() { return "Please use the button on the webpage"; };'
ui <- basicPage(
mainPanel(tags$head(tags$script(jscode)))
)
server <- function(input, output,session) {}
runApp(list(ui = ui, server = server))
示例2 将完全禁用导航。就个人而言,我不喜欢这种方法,因为人们可能会因为您的网站没有提供标准导航功能而感到恼火
rm(list = ls())
library(shiny)
jscode2 <- "history.pushState(null, null, document.title);
window.addEventListener('popstate', function () {
history.pushState(null, null, document.title);});"
ui <- basicPage(
mainPanel(tags$head(tags$script(jscode2)))
)
server <- function(input, output,session) {}
runApp(list(ui = ui, server = server))