javascript - jQuery插件制作 一个页面多次调用
迷茫
迷茫 2017-06-26 10:50:37
0
1
594

我想写个轮播图插件,我页面上调用了两次..... 每一个传进去三张图片,但是我循环出来添加到页面上的时候 发现有6个li我现在想要的效果就是 我循环一次给我第一个添加3个li 第二次给第二个添加相对应的li 希望路过的大牛给指点下....

$(".xxx_carousel").xxx_carousel({ $picObj: { "1": "showImgItem", "2": "showImgItem cyan", "3": "showImgItem red" } }); $(".xxx_carousel").xxx_carousel({ indicatorLeftText: '左', indicatorRightText: '右', $picObj: { "4": "showImgItem", "5": "showImgItem cyan", "6": "showImgItem red" } });

(function($, window, document, undefined) {

var defaults = { navEvents: 'click', indicatorEvents: 'click', indicator: true, indicatorLeftText: 'left', indicatorRightText: 'right', animateSpeed: 800, $picObj: {}, $cb: null }; var xxx_carousel = function(ele, ops) { this.$ele = ele; this.settings = $.extend({}, defaults, ops); var _this = this; this.initaddElem(); } xxx_carousel.prototype = { initaddElem: function(){ var $picTemplate = '', $carouselPicWarp = $(".xxx_carousel_pic_warp"), _this = this; // --> 这个地方会循环两次 我页面调用的时候传了两个$picObj // --> 但是我发现循环时候它是直接在每个$(".xxx_carousel_pic_warp")下面添加了六个li 我现在想要的效果就是循环第一次 给我的第一个这个类名的加三个li, // --> 循环第二次的时候给我第二个类名的加三个li 而不是一次添加6个.... 这个该是怎么解决的呢?? $.each(this.settings.$picObj, function(i, val) { $picTemplate += '' }) $carouselPicWarp.append($picTemplate) } } $.fn.xxx_carousel = function(opts) { var xxxCarousel = new xxx_carousel(this, opts); return xxxCarousel; }

})(jQuery, window, document)

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复 (1)
ringa_lee

你的两个元素,类名都是.xxx_carousel,所以当你给$(".xxx_carousel")绑定的时候,都会同时绑定两个,正确的做法是:第一次只选中第一个绑定,第二次选中第二个绑定,就可以了。

$(".xxx_carousel:eq(1)").xxx_carousel({ // 注意:eq(1),也可以用jQuery的.eq(1)或者first() $picObj: { "1": "showImgItem", "2": "showImgItem cyan", "3": "showImgItem red" } }); $(".xxx_carousel:eq(2)").xxx_carousel({ // 注意:eq(2),也可以用jQuery的.eq(2),由于总共只有两个,也可以用jQuery的.last() indicatorLeftText: '左', indicatorRightText: '右', $picObj: { "4": "showImgItem", "5": "showImgItem cyan", "6": "showImgItem red" } });
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!