选择下拉菜单显示在闪亮的其他元素后面

时间:2018-02-21 14:11:17

标签: javascript r shiny

任何人都可以给我一个以下问题的解决方案,在下拉菜单中选择第一个项目时,下拉菜单会在情节悬停下进行。

enter image description here

我使用了以下代码。但是没有用。

在UI中

fluidRow(
                                   tags$hr(style="z-index: 10000;"),
                                   column(width = 3,h2("Device Type")),
                                   column(width = 3,htmlOutput("disselect")),
                                   column(width = 3,htmlOutput("cityeselect")),
                                   column(width = 3,h2("Property Type"))
                                 ),

在服务器

output$disselect <- renderUI({
    selectInput("district", "District", c("All",unique(bookings$District)), selected = "All")
  })

任何黑客?

2 个答案:

答案 0 :(得分:1)

设置下拉列表的z-index,使其大于绘图模式栏的z-index,例如1002可以工作:

column(width = 3, offset = 9, 
               selectInput("y", "y", colnames(mtcars)),style="z-index:1002;")

一个工作示例:

library(shiny)
library(plotly)

ui <- fluidPage(
  fluidRow(
    column(width = 3, offset = 9, 
           selectInput("y", "y", colnames(mtcars)),style="z-index:1002;")
  ),
  fluidRow(plotlyOutput("plot"))
)

server <- function(input, output, session) {
  output$plot <- renderPlotly({
    g <- ggplot(mtcars, aes_string("disp", input$y)) +
      geom_point()
    g <- ggplotly(g) %>%
      config(displayModeBar = TRUE)
    g
  })
}

shinyApp(ui, server) 

答案 1 :(得分:0)

如果您不需要plotly modebar,则可以remove it

以下是一个例子:

library(shiny)
library(plotly)

ui <- fluidPage(
        fluidRow(
                column(width = 3, offset = 9, 
                       selectInput("y", "y", colnames(mtcars)))
        ),
        fluidRow(plotlyOutput("plot"))
)

server <- function(input, output, session) {
        output$plot <- renderPlotly({
                g <- ggplot(mtcars, aes_string("disp", input$y)) +
                        geom_point()
                ### code to hide the modebar ###
                g <- ggplotly(g) %>%
                        config(displayModeBar = FALSE)
                g
        })
}

shinyApp(ui, server)

Example