在用H5做移動(dòng)端項(xiàng)目,產(chǎn)品模型需要有個(gè)左右滑動(dòng)輪播圖效果。
使用的時(shí)候遇到了辣手的問題,使用jquery的ajax動(dòng)態(tài)循環(huán)生成當(dāng)?shù)降诙摰臅r(shí)候始終滑動(dòng)不起來,chrome的手機(jī)開發(fā)者模式和真機(jī)模式全都滑動(dòng)不起來!
官方規(guī)范:
<div class="swiper-container" ms-visible="result.status==1">
<div class="swiper-wrapper" >
<!-- =======循環(huán)部分======= -->
<div class="swiper-slide" ms-repeat="result.mediaList">
//此處為一個(gè)滑動(dòng)頁內(nèi)容
</div>
<!-- ============== -->
</div>
</div>
測(cè)試代碼
<div class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide orange-slide swiper-slide-active">

</div>
<div class="swiper-slide orange-slide swiper-slide-active">

</div>
<div class="swiper-slide">

</div>
</div>
<div class="swiper-pagination swiper-pagination-v"></div>
</div>
當(dāng)我在測(cè)試的時(shí)候,靜態(tài)復(fù)制n個(gè)塊。用Chrome手機(jī)開發(fā)模式調(diào)試左右滑動(dòng)暢通無阻,排除了循環(huán)出錯(cuò)的問題!再次翻閱官方文檔在初始化增加了2項(xiàng)設(shè)置(紅色文字):
var mySwiper = $('.swiper-container').swiper({
mode: 'horizontal',
pagination: '.swiper-pagination',
loop: true,
observer: true,//修改swiper自己或子元素時(shí),自動(dòng)初始化swiper
observeParents: true//修改swiper的父元素時(shí),自動(dòng)初始化swiper
});
但動(dòng)態(tài)加載后Chrome調(diào)試手機(jī)開發(fā)模式可以左右滑動(dòng)了,很順通。于是真機(jī)測(cè)試,用蘋果手機(jī),安卓各項(xiàng)主流手機(jī)依然左右滑動(dòng)不了。再次崩潰~~
于是各種排除問題,終于在pc端+移動(dòng)端完美解決了問題!問題出在初始化的時(shí)候放在html文件了,應(yīng)該放在接口取值后找到swiper-wrapper類后馬上初始化!
$.ajax({
url: "memc/center/ouya/getChainImage",
type: "get",
dataType: "json",
timeout: "30000",
beforeSend: function() {
$(".swiper-wrapper").html("");
},
success: function(res) {
if (res.resCode == 1) {
var ht = '';
$.each(res.data, function(i, v) {
ht += '<div class="swiper-slide"></div>';
});
$(".swiper-container").find('.swiper-wrapper').html(ht);
var mySwiper = $('.swiper-container').swiper({
mode: 'horizontal',
pagination: '.swiper-pagination',
loop: true,
observer: true,//修改swiper自己或子元素時(shí),自動(dòng)初始化swiper
observeParents: true//修改swiper的父元素時(shí),自動(dòng)初始化swiper
});
} else {
showTips(res.msg);
}
},
error: function() {
showTips('焦點(diǎn)圖未獲取到');
}
});
swiper這個(gè)插件壓縮版有53kb分量還是過大,在移動(dòng)端流量如黃金的平臺(tái)下覺得還是太大。如果有更好的解決方案希望大家可以多多指教!