Javascript 如何使用shinydashboard在shiny应用程序中检查浏览器的浏览器宽度,并相应地更改框宽度

Javascript 如何使用shinydashboard在shiny应用程序中检查浏览器的浏览器宽度,并相应地更改框宽度,javascript,r,shiny,shinydashboard,Javascript,R,Shiny,Shinydashboard,我想检测浏览器宽度。如果宽度太小,则触发css中的宽度更改 基本上,我想改变框的宽度是50%的屏幕宽度,如果移动和20美元的屏幕宽度,如果它大于移动屏幕 下面是我的代码 box( title = "KPI Table" ,div(style="display:block;width: 20%;float: left;margin: 0 10px;" ,selectInput('slice', 'Time View'

我想检测浏览器宽度。如果宽度太小,则触发css中的宽度更改

基本上,我想改变框的宽度是50%的屏幕宽度,如果移动和20美元的屏幕宽度,如果它大于移动屏幕

下面是我的代码

box(
      title = "KPI Table"
      ,div(style="display:block;width: 20%;float: left;margin: 0 10px;"
          ,selectInput('slice', 'Time View'
                   , c('Day', 'Week', 'Month', 'Quarter', 'Year')
                   , selected = 'Month'))
      , DT::dataTableOutput('KPITab')
      , status = "primary"
      , width = 12
      , collapsible = TRUE)
    )
我想使用javascript来检测宽度的变化,并将div中的值从20%更改为50%


感谢

Css样式具有“最小宽度”选项,这是一个简单的替代解决方案

使用jQuery,它是
$(window).width()
的可能副本,我不知道shiny或javascript,需要更多的指导。您应该阅读我链接到的问题的答案,但还要注意,响应框架无论如何都应该解决浏览器宽度问题,shiny的大多数组件默认情况下都是响应的。jQuery是一个可以包含的JS库,允许您使用我给出的命令检测浏览器宽度。它是被动的,但是,我想根据我的浏览器宽度更改输入,那么应用哪个元素呢?例子?