swiper (Table切换和动态加载时候出现的问题)
本文为让心灵-去旅行原创,转载请说明.。
我们在写一个简单的swiper图片轮播的时候很简单,是写死的也就那么几张图片轮播。如果这时候图片和一些东西是后台的,你从js里动态添加到DOM时,这时候你就会发现各种问题。比如轮播图不动,无法滑动。下面的指示小圆点变得混乱了。等等。其实这些都是swiper的渲染问题,因为简单的swiper页面是静态的,资源数稳定的。当产生变化时,swiper需要重新渲染才行,不然就会出现问题。那么怎么解决呢,最简单的办法就是在ajax成功接收后台数据时我们开始渲染调用swiper函数;
例:
function showSlider(data){ var data = eval(data); //这是动态添加数据
var str="";
for(var i =0;i<data.lunbos.length;i++){
str+="<div class='swiper-slide'>"+
"<a class='lunbotu1' href='newsDetail.html?id="+data.lunbos[i].link_url+"'>"+
"<img class='sw_img' src='"+data.lunbos[i].img_url+"' alt=''>"+
"</a>"+
"<p class='swiper_P'>"+data.lunbos[i].desc+"</p>"+
"</div>";
};
$('.addin_slider').append(str); //添加完以后就可以调用swiper了 哦了
var mySwiper = new Swiper('.swiper_one', {
// direction: 'vertical',
loop: true,
autoplay : 2000,
// 如果需要分页器
pagination: '.swiper-pagination',
});
};
2.table切换下的swiper问题
当你做一个可以切换的table并且切换的div里包括着两个或者n个轮播。这时候将swiper依次放进去的时候你会发现 左右滑动有问题,第一个是好的,从第一个以后的swiper都是乱的,我是将swiper的调用一起写在了切换的函数里这样就解决了乱的问题,因为切换的时候重新调用了一下。后来发现这样做每次切换就调用函数重新渲染这样很消耗资源和内存。最简单的方法我贴在下面吧.
var mySwiper = new Swiper('.swiper_4', {
slidesPerView: 1,
spaceBetween: 20,
autoplay: 2000,
// 如果需要前进后退按钮
// nextButton: '.swiper-button-next',
// prevButton: '.swiper-button-prev',
pagination: '.swiper-pagination',
observer:true,//修改swiper自己或子元素时,自动初始化swiper
observeParents:true,//修改swiper的父元素时,自动初始化swiper
onSlideChangeEnd: function(swiper){
swiper.update(); //swiper更新
}
});
很简单你拿去复制粘贴就可以用了,不过函数名字要改一下。
swiper (Table切换和动态加载时候出现的问题)的更多相关文章
- [转]bootstrap的table插件动态加载表头
原文地址:https://blog.csdn.net/abubu123/article/details/78060321 bootstrap的table属性已经很熟悉了,最近遇到一个问题,犹豫每个列表 ...
- bootstrap table插件动态加载表头
这篇文章主要为大家详细介绍了bootstrap table插件动态加载表头,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 bootstrap的table属性已经很熟悉了,最近遇到一个问题,犹豫 ...
- vue 实现tab切换动态加载不同的组件
vue 实现tab切换动态加载不同的组件 使用vue中的is特性来加载不同的组件.具体看如下代码:这个功能对于vue比较复杂的页面可以使用上,可以把一个页面的功能拆分出来,使代码更简单.使用方式具体看 ...
- 解决问题:swiper动态加载图片后无法滑动
原因:swiper在初始化的时候会扫描swiper-wrapper下面的swiper-slide的个数,从而完成初始化,但是由于动态加载时在初始化之后的动作,所以导致无法滑动. 解决方案 1:在动态获 ...
- WPF 界面实现多语言支持 中英文切换 动态加载资源字典
1.使用资源字典,首先新建两个字典文件en-us.xaml.zh-cn.xaml.定义中英文的字符串在这里面[注意:添加xmlns:s="clr-namespace:System;assem ...
- 动态加载swiper,默认显示最后一个swiper-slide解决方案???
问题描述: 用ajax动态加载swiper-slide以后,由于我是自适应屏幕的尺寸来决定一屏显示多少图片,所以加了 slidesPerView:'auto'这条属性,加了这条属性过后,每次刷新页面的 ...
- Swiper 轮播插件 之 动态加载无法滑动
1.原因:轮播图未完全动态加载完成,即初始化 2.方法一:ajax链式编程 $.ajax({ type: "get", url: serviceURL + "/listB ...
- 044. asp.net主题之三应用或禁用主题和动态加载主题
1.为单个页面指定主题可以将@Page指令的Theme或StyleSheetTheme属性设置为要使用的主题名称, 代码如下: <%@ Page Theme ="MyTheme&quo ...
- Xib设计UITableViewCell然后动态加载
转自: http://www.2cto.com/kf/201202/120764.html (注:环境Mac OS X Lion 10.7.3 + Xcode 4.2.1 + iOS SDK 5.0. ...
随机推荐
- [洛谷P4341][BJWC2010]外星联络
题目大意:给你一个长度为$n(n\leqslant3\times10^3)$的字符串,要你求出其中出现次数大于$1$的子串,并按字典序输出次数. 题解:建$SAM$后求出每个点的$size$,最后按字 ...
- 电子商务(电销)平台中商品模块(Product)数据库设计明细
以下是自己在电子商务系统设计中的数据库设计经验总结,而今发表出来一起分享,如有不当,欢迎跟帖讨论~ 商品表 (product)|-- 自动编号 (product_id)|-- 商品名称 (produc ...
- 解题:SDOI 2013 保护出题人
题面 首先是愉快的推式子 $dp[i]=max(dp[i],\frac{sum[i]-sum[j-1]}{x[i]+(i-j)*d})(1<=j<=i<=n)$(考虑有一只僵尸正好走 ...
- array_diff、array_diff_key、array_diff_ukey、array_diff_assoc、array_diff_uassoc 的用法
<?php // array_diff* 系列的函数都返回关联数组// array_diff* 系列函数返回数组的差集(返回在第一个参数中, 但不在其他参数中的元素) $array1 = [ ' ...
- Listener 介绍
当 web 应用在 web 容器中运行时,web 应用内部会不断地发生各种事件:如 web 应用启动.web 应用停止,用户 session 开始.用户 session 结束.用户请求到达等. 实际上 ...
- java 关于值引用、地址引用的问题
8种基本引用类型 四种整数类型(byte.short.int.long) 两种浮点数类型(float.double) 一种字符类型(char) 一种布尔类型(boolean) 以及如String, f ...
- Intellj IDEA使用技巧记录
▲.Intellj IDEA光标变成了insert光标状态 且不能编辑操作: https://blog.csdn.net/aosica321/article/details/52787418 ▲.在i ...
- 嵌入式 视频编码(H264)hi3518
这几天在编写视频录制模块,所以,闲暇之余,又粗粗的整理了一下,主要是API,以备不时之用 摄像头获取的模拟信号通过经芯片处理(我们使用的是CX25825),将模拟信号转成数字信号,产生标准的IT ...
- background(css复合写法)
1. 背景-background========================================================== 单个属性的写法 .sample1 { /*背景颜色 ...
- C11线程管理:异步操作
1.异步操作 C++11提供了异步操作相关的类,std::future.std::promise和std::package_task.std::future作为异步结果的传输通道,方便的获取线程函数的 ...