获取闪亮光标下元素的 ID
get ID of element under cursor in shiny
在我的 Shiny 应用中,用户将鼠标悬停在一些 HTML 输出上,该输出由多个 span 组成,如下所示:
<div id="mydiv">
<span id="span1">foo</span>
<span id="span2">bar</span>
</div>
我想获取用户当前鼠标悬停的范围的 ID 作为闪亮的输入$...
我知道有很多 js 方法可以做到这一点,jquery get element where the cursor is, but I don't know how to integrate with Shiny, e.g. by using shinyjs https://deanattali.com/shinyjs/extend。
像这样,如果我理解正确的话:
library(shiny)
js <- "
$(document).ready(function(){
$('span').on('mouseover', function(evt){
Shiny.setInputValue('span', evt.target.id);
});
})
"
ui <- basicPage(
tags$head(tags$script(HTML(js))),
tags$div(
tags$span(id = "span1", "foo"),
tags$span(id = "span2", "bar")
),
br(),
verbatimTextOutput("span")
)
server <- function(input, output){
output[["span"]] <- renderPrint({
input[["span"]]
})
}
shinyApp(ui, server)
在我的 Shiny 应用中,用户将鼠标悬停在一些 HTML 输出上,该输出由多个 span 组成,如下所示:
<div id="mydiv">
<span id="span1">foo</span>
<span id="span2">bar</span>
</div>
我想获取用户当前鼠标悬停的范围的 ID 作为闪亮的输入$... 我知道有很多 js 方法可以做到这一点,jquery get element where the cursor is, but I don't know how to integrate with Shiny, e.g. by using shinyjs https://deanattali.com/shinyjs/extend。
像这样,如果我理解正确的话:
library(shiny)
js <- "
$(document).ready(function(){
$('span').on('mouseover', function(evt){
Shiny.setInputValue('span', evt.target.id);
});
})
"
ui <- basicPage(
tags$head(tags$script(HTML(js))),
tags$div(
tags$span(id = "span1", "foo"),
tags$span(id = "span2", "bar")
),
br(),
verbatimTextOutput("span")
)
server <- function(input, output){
output[["span"]] <- renderPrint({
input[["span"]]
})
}
shinyApp(ui, server)