动态加载swiper,默认显示最后一个swiper-slide怎么办

自己遇到的一个问题

VUE动态加载完成后显示最后一个,没找到原因不知道为什么

用了一个别人折中的方法

操作DOM更改了transform3d初始值

代码如下

    // 获得学段信息
    getPeriods () {
      let data = {
        subject: this.selectPeriodNum
      }
      this.$axios({
        method: ‘GET‘,
        url: ‘/api/app/v1/get_live_courses_type‘,
        params: data,
        headers: {
          ‘sign‘: this.$encryption(data, this.$store.state.token, this.$store.state.uid)
        }
      })
        .then(res => {
          console.log(res)
          this.periodData = res.data.data
          this.$nextTick(() => { // 下一帧渲染
            this.nav2Swiper()
            this.setSwiperInit()
          })
        })
        .catch(err => { console.log(err) })
    },

    nav2Swiper () {
      this.nav2SwiperOb = new Swiper(‘#nav2 .swiper-container‘, {
        initialSlide: 0,
        slidesPerView: 5,
        // spaceBetween: ‘4.27%‘,
        observer: true, // 修改swiper自己或子元素时,自动初始化swiper
        observeParents: true, // 修改swiper的父元素时,自动初始化swiper
        slideShadows: true
      })
    },
    setSwiperInit () {
      setTimeout(() => {
        document.getElementsByClassName(‘swiper-wrapper‘)[0].style.transform = ‘translate3d(0px, 0px, 0px)‘
      }, 50)
    }

使用

setTimeout(() => {
        document.getElementsByClassName(‘swiper-wrapper‘)[0].style.transform = ‘translate3d(0px, 0px, 0px)‘
      }, 50)初始化

原文地址:https://www.cnblogs.com/ichenchao/p/11697775.html

时间: 2024-10-12 15:44:57

动态加载swiper,默认显示最后一个swiper-slide怎么办的相关文章

将.stl文件转化为.dae并动态加载到SceneKit显示(ios中显示3d模型)

ios8之后苹果推出了一个3D模型渲染框架.SceneKit.但是国内针对这方面的教程并不是很多.前两天搞了一下也是一头雾水,终于把最基础的内容搞明白了之后,写下这篇随笔作为cnblogs的开篇,希望能一直写下去. SceneKit现在可以支持有限的几种模型,截止到我写这篇文章为止似乎只有.dae和.abc后一种模型我没有使用过.这篇文章只针对.dae模型写. 首先如果是希望加载一个已有的,不需要程序在运行的时候动态添加的dae模型.那么我们可以直接新建一个game类型的工程.在选项中选择Sce

vue2.0实现图片加载失败默认显示图片

<div class="bg"> <img :src="goods.phoneFloorAd.resUrl" :onerror="errorImg01"> </div> <script type="text/ecmascript-6"> export default { data () { return { errorImg01: 'this.src="' + requ

nginx模块动态加载(http)

解析部分 动态加载所有模块,维护一个全局数组modules[nmodules]: 解析配置文件,记录每个块及子块所用的模块,细分到location级别(merge),维护一个全局数组call_modulers[nlocations][ncallmodulers],每当生成一个location,nlocations++: 为call_modulers中每个location添加默认模块及配置,所有模块加载完毕: merge call_modulers中各个location使用模块的phase的cal

android 中的动态加载

这里所说的动态加载是加载一个包(插件),其实就是一个 apk只是这个apk 动态加载而已.创建一个要动态加载的 apk(插件)写一个类用于动态加载//DynamicTest.java package com.example.liuhailong.idynamic; import android.app.AlertDialog; import android.app.Dialog; import android.content.Context; import android.content.Dia

EasyUi -- 如何根据动态加载panel和Datagrid

在做项目的过程中,前台的面板和表格一般都不是固定的,它是根据后台传来的数据进行变化的.举个例子: 实现: 看一下我们的效果图: 这个上面的最左边的Panel要根据系别动态加载,有多少个系别就要加载都少个Panel,Panel里面的是一个table,这个里面也是动态加载出来. 右边是一个datagrid,datagrid里面的工作效率.业务能力等等也都是数据库动态加载出来的,包括后面的ABCD也是动态的. 这样就算数据库中的数据怎么变,这里都会动态地加载出来.那么怎么实现这些功能呢? 一.动态加载

动态加载TreeView时让TreeView节点前显示加号

解释下标题,我这里通过webservice获取数据并动态加载TreeView节点,那么某个节点展开前它是没有子节点的,那么它就不显示加号,这样会让用户误以为此节点不能展开.我是这样做的,每次创建节点a时,默认为它创建一个子节点b(随便给个名字就行,假设为"呵呵"),那么创建的节点a就有了子节点b,也就会显示加号了,等展开节点a时,再把刚才默认创建的子节点b移除就可以了,删除方法是先判断展开的节点a是否有一个子节点并且名字为"呵呵",如果为真则删掉. 当然这样做导致有

7. 反射技术:其实就是动态加载一个指定的类

反射技术:其实就是动态加载一个指定的类,并获取该类中的所有的内容.而且将字节码文件封装成对象,并将字节码文件中的内容都封装成对象,这样便于操作这些成员.简单说:反射技术可以对一个类进行解剖. 反射的好处:大大的增强了程序的扩展性. 反射的基本步骤: 1.获得Class对象,就是获取到指定的名称的字节码文件对象. 2.实例化对象,获得类的属性.方法或构造函数. 3.访问属性.调用方法.调用构造函数创建对象. 获取这个Class对象,有三种方式: 1:通过每个对象都具备的方法getClass来获取.

tips:解决bootstrapo-switch 在jqgrid中动态加载不显示的问题

bootstrapo-switch 是一个十分好用的插件,用来关闭开启再好不过了,适合状态类型只有两种的情况下可以进行切换 在使用中,在jqgrid动态加载的时候出现不能加载的问题 原因是html代码没有得到渲染,那么只要在jqgrid加载完毕后再次渲染即可~ function renderSwitch() { $('.make-switch').bootstrapSwitch(); return(true); } function renderSwitch() { $('.make-switc

在页面中使用拼接字符串的方式显示动态加载的数据

在做页面的时候为了使页面美化,我们经常会用拼接字符串的方式,动态加载后台的数据,这里我们使用的前台框架是bootstrap,但是很多效果还是要用jquery来实现 (1)方法传参与字符串的拼接  (拼接用的replace) 先声明一个展示数据的页面模型(使用过的模型1) var userModel = "<div class=\"itemdiv commentdiv\" style=\"margin-left: 7%;\">"+ &q