当前位置: 首页 > 知识库问答 >
问题:

javascript - 如何处理移动端flickity滑完后的空白问题?

邓德惠
2024-02-03

由于产品的有多个变体属性,每个属性又对应很多图片,图片太多了,于是我添加了代码来实现点击产品的选项值,来展示对应alt值的图片,而其他未被选择的选项值对应的图片隐藏。PC端完成了此效果,但是移动端没有完全响应。移动端采用的是轮播图方式flickity控制。当图片滑完时会显示空白,正常效果应该是滑到最后一张不能滑动了,或者自动跳转到第一张图片,请问如何实现这个效果?

//这是加的判断,根据产品变体的选项值组合等于图片的alt值来对应展示图片,其他产品图片隐藏。

 _filterThumbnails: function(variant){      console.log(variant);      selector = "";      option = variant.options;      $('[data-title]').hide();      for(var i=0;i<option.length;i++){       selector = selector + option[i];       if(i < option.length-1){         selector = selector + '/';       }      }      var thumbnail_selector = "[data-title='" + selector +"']";      $(thumbnail_selector).show();    },

//PC端已经完成了此效果。移动端也有此效果,但是滑完该选项值组合对应的图片后,任然可以滑动,并显示空白。


想要的效果是滑到最后一张不能滑动了,或者自动滑动到第一张图片。PC端图片展示方式是平铺的,不需要滑动展示所以没有这个问题。请问给为前辈如何调整移动端flickity的js来响应上面的判断?

共有1个答案

何乐
2024-02-03

在处理移动端flickity滑完后的空白问题时,你可以尝试使用Flickity的"wrapAround"选项。这个选项可以在轮播图滑动到尽头时自动循环到起始位置,避免了出现空白的问题。在你的代码中,你可以尝试添加以下代码:

var flickity = new Flickity(element, {  // 其他配置项...  wrapAround: true});

其中,element是你要应用flickity的DOM元素。通过设置wrapAroundtrue,当轮播图滑动到最后一张图片时,会自动循环到第一张图片。

如果你想在滑动到最后一页后禁止用户继续滑动,可以使用flickity.pointer.disable方法来禁用用户交互。例如:

flickity.on('end', function() {  flickity.pointer.disable();});

在这个例子中,当滑动结束时,end事件被触发,然后禁用用户交互。你可以根据需要修改这个事件和操作。

 类似资料:
  • 为什么移动端设置了宽度为430px,且所有的内容的宽度也都在430px以内,还是会出现手机端左右滑动条?且还会出现右边有一长条竖着的空白条无法删除。 希望能够将这个竖条以及横向左右滑动条删除

  • 在运行中,模板中的 空白 处理在某种程度上来说是纠缠所有模板引擎的一个问题。 我们来看这个模板。我已经用颜色标记了模板中的组件: 文本, 插值, FTL 标签.。 使用 [BR] 来想象 换行。 <p>List of users:[BR] <#assign users = [{"name":"Joe", "hidden":false},[BR] {

  • 我一直在努力在MySQL中输入空白值。例如,代码: 不会工作。我总是收到以下错误: 但是,当我运行以下两个语句之一时: 或 这个查询工作得很好。column2的默认值已设置为“0”,仍然没有运气。 我面临的问题是所有表中的所有列。我的申请将有空白条目(无法更改)。这个功能以前工作得很好,当我将应用程序代码转移到另一个服务器时,我开始出现这个错误。 MySQL服务器版本:8.0.22-MySQL社区

  • white-space属性用来设置文本内空白符(如空格、回车、tab字符等)的处理方式,可选值有 normal | pre | nowrap | pre-wrap | pre-line,默认值为 normal。该属性出自 CSS1,在 CSS 2.1中新增了属性值 pre-wrap 和 pre-line。不同取值的含义见表 3‑6: 表 3‑6 white-space属性的取值及含义 属性值 含义

  • API 都搞不好,还怎么当程序员?如果 API 设计只是后台的活,为什么还需要前端工程师。 作为一个程序员,我讨厌那些没有文档的库。我们就好像在操纵一个黑盒一样,预期不了它的正常行为是什么。输入了一个 A,预期返回的是一个 B,结果它什么也没有。有的时候,还抛出了一堆异常,导致你的应用崩溃。 因为交付周期的原因,接入了一个第三方的库,遇到了这么一些问题:文档老旧,并且不够全面。这个问题相比于没有文

  • 我为一种简单的编程语言创建了lexer。现在,我使用确定性有限自动机代替正则表达式(Java中的正则表达式)。自动机工作得很好,只是它不会报告错误,例如,如果我在源代码中有moduleclouds(module和clouds都是关键字)。相反,它将创建两个令牌,称为KW_模块和KW_云。有人可能会说,如果自动装置处于KW_模块的最终状态,我可以展望空白。但这并不能解决问题,因为在语言中,我可以有8