需求:頁面多處輪播,單圖/多圖/分組輪播模式可配置。架構:
<div class="carousel" data-mode="group" data-group-size="3" data-items='[{"img":"1.jpg","url":"/a"},{"img":"2.jpg","url":"/b"}]'></div>
$.fn.carousel = function() {
return this.each(function() {
var $el = $(this);
var mode = $el.data('mode'); // single | multi | group
var items = $el.data('items');
// 根據 mode 生成 DOM 結構
// 單圖:<div><img></div>...
// 多圖:<ul><li><img></li></ul>
// 分組:每 N 個包一層 <div class="group">
// 最後統一調用 $el.find('.carousel-inner').slick()/owlCarousel()/自寫邏輯
});
};
// 頁面初始化
$('.carousel').carousel();
Slick/Owl Carousel/Swiper 保證效果