微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 R 的 slickR carousel 中移动上一个下一个按钮

如何解决在 R 的 slickR carousel 中移动上一个下一个按钮

我可以成功移动 slickr 轮播的“下一步”按钮。但是,当我使用类似的方法移动“上一个”按钮时,它不起作用。动作和鼠标悬停不再起作用。为什么是这样?如何移动“prev”按钮并保持完整功能

documentation 是指名为 appendArrows 的设置中的元素。但是我不清楚如何使用它。

appendArrows character,Change where the navigation arrows are attached (Selector,htmlString,Array,Element,jQuery object),Default: $(element)

这里是功能齐全的移动按钮应该出现的地方:

enter image description here

library(shiny)
library(slickr)

# Test #########################################################################
chart_names_list <- c( "http://placehold.it/900x500/39CCCC/ffffff&text=Slide+1","http://placehold.it/900x500/39CCCC/ffffff&text=Slide+2","http://placehold.it/900x500/39CCCC/ffffff&text=Slide+3")
num_slides <- 2


ui <- fluidPage(
  tags$head(
    tags$style(HTML("
    .slick-next {
      right: 163px;
      top: 20px;
    }
    .slick-prev {
      left: 670px;
      top: 20px;
    }
    .slick-slide {
      margin-top: 30px;
    }
      
    ")
    )
  ),slickrOutput("slick_output")
)

server <- function(input,output,session) {
  output$slick_output <- renderslickr({
    slickr(obj = chart_names_list,height = 300,width = "100%") +
      settings(dots = TRUE)
  })
}

shinyApp(ui,server)

解决方法

appendArrows 参数用于告诉应该在哪个 div 类中显示箭头。

这显示了原理,但仍需要一些额外的 css 才能获得您期望的准确结果:

library(shiny)
library(slickR)

# Test #########################################################################
chart_names_list <- c( "http://placehold.it/900x500/39CCCC/ffffff&text=Slide+1","http://placehold.it/900x500/39CCCC/ffffff&text=Slide+2","http://placehold.it/900x500/39CCCC/ffffff&text=Slide+3")
num_slides <- 2


ui <- fluidPage(
  tags$head(
    tags$style(HTML("
      .arrows {
      height: 30px;}"))
  ),fluidRow(
    column(6,),column(2,tags$div(class="arrows"
      )),column(4)),slickROutput("slick_output")
)

server <- function(input,output,session) {
  output$slick_output <- renderSlickR({
    slickR(obj = chart_names_list,height = 300,width = "100%") +
      settings(dots = TRUE,appendArrows = '.arrows')
  })
}

shinyApp(ui,server)

enter image description here

,

由于这是关于箭头按钮定位的原始问题,我想值得一提的是,@ixodid 意识到 here,@Waldi 的 column-approach 在浏览器窗口打开时不再工作调整大小。

以下是对此的解决方法:

library("shiny")
library("slickR")

chart_names_list <- c( "http://placehold.it/900x500/39CCCC/ffffff&text=Slide+1","http://placehold.it/900x500/39CCCC/ffffff&text=Slide+3")
num_slides <- 3

ui <- fluidPage(
  tags$head(
    tags$style(HTML("
    .arrows {
      height: 20px;
    }
    .slick-prev {
      left: calc(100% - 60px);
    }
    .slick-next {
      left: calc(100% - 35px);
    }
    .slick-slide img {
    width: 100% !important;
    }
    "))
  ),fluidRow(
    column(12,tags$div(class="arrows"))
  ),height = 300) +
      settings(dots = TRUE,server)
,

采纳@Waldi 的宝贵建议并添加一些 css 会得到下面的完整答案。

library("shiny")
library("slickR")

# Test #########################################################################
chart_names_list <- c( "http://placehold.it/900x500/39CCCC/ffffff&text=Slide+1","http://placehold.it/900x500/39CCCC/ffffff&text=Slide+3")
num_slides <- 3


ui <- fluidPage(
  tags$head(
    tags$style(HTML("
    .arrows {
      height: 30px;
    }
    .slick-prev {
      left: 230px;  # moves right
    }
    .slick-next {
      left: 250px;  # moves right
    }
    "))
  ),tags$div(class="arrows"
           )),server)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?