【问题标题】:R shinydashboard: capture click event on dashboard bodyR shinydashboard:捕获仪表板主体上的单击事件
【发布时间】:2020-08-04 20:52:32
【问题描述】:

如何捕获闪亮仪表板主体上的点击事件?

尝试如下。它加载仪表板并在不单击正文的情况下发出警报。然后点击身体什么也不做。预期的行为是每次我单击身体时都会发出警报。

library(shiny)
library(shinydashboard)
library(shinyjs)

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(useShinyjs())
)

server <- function(input, output) { 

  shinyjs::runjs("document.body.addEventListener('click', alert('hello'));")  

  }

shinyApp(ui, server)

一个想法是给 body 一个 id 并将其与 shinyjs::onclick 一起使用,但是我不确定如何给 body 一个 id。

【问题讨论】:

    标签: javascript r shinydashboard shinyjs


    【解决方案1】:

    您的事件监听器应该是一个函数,而不是一个表达式。例如

    
      shinyjs::runjs("document.body.addEventListener('click', function() {alert('hello')});")  
    
    }
    

    这样每次点击发生时,该函数都会被调用。

    【讨论】:

      猜你喜欢
      • 2011-02-13
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 1970-01-01
      • 1970-01-01
      • 2013-06-28
      • 2014-04-28
      相关资源
      最近更新 更多