问题
What do I add to the ui part of shiny that will make my #loadmessage blink? I've seen things like this
How to make blinking/flashing text with css3?
However, I'm not sure how to implement this in R.
I have the following loading feature in my ui code:
tags$head(tags$style(type="text/css",
"#loadmessage {
position: fixed;
top: 50%;
left: 50%;
ocacity: 0.50;
opacity: 0.0;
text-align: center;
font-weight: bold;
font-size: 300%;
color: #000000;
z-index: 105;
}"))
conditionalPanel(condition="$('html').hasClass('shiny-busy')",tags$div("Loading...",id="loadmessage"))
回答1:
Like this probably?
library(shiny)
ui <- shinyUI(
fluidPage(
tags$head(tags$style(type="text/css",
"#loadmessage {
position: fixed;
top: 50%;
left: 50%;
ocacity: 0.50;
text-align: center;
font-weight: bold;
font-size: 300%;
color: #000000;
z-index: 105;
animation: blinker 1s linear infinite;
}")),
conditionalPanel(condition="$('html').hasClass('shiny-busy')",
tags$div("Loading...",id="loadmessage"),
tags$script(HTML("
(function blink() {
$('#loadmessage').fadeOut(500).fadeIn(500, blink);
})();
"))
),
actionButton("action", "action")
)
)
server <- function(input, output){
observeEvent(input$action, {
Sys.sleep(3)
})
}
shinyApp(ui, server)
来源:https://stackoverflow.com/questions/37470226/blinking-loading-text-in-r-shiny