2012-02-29 1 views
0

У меня есть jcarousel, чтобы прокручивать кучу изображений, используя стандартные стрелки влево и вправо, которые расположены над изображениями. Я также хотел бы добавить набор навигационных стрелок к нижней части изображений, но мне нужно будет указать им другое имя класса, чтобы я мог установить их положение. Что мне нужно изменить в javascript-файле jcarousel, чтобы добавить эти дополнительные стрелки? Я думаю, что это может быть в этом фрагменте кода ...Модификация плагина Jcarousel для добавления дополнительных элементов управления nav

= this.list.wrap("<div></div>").parent(); 
if(this.container.size()===0)this.container=this.clip.wrap("<div></div>").parent();b!==""&&this.container.parent()[0].className.indexOf("jcarousel-skin")==-1&&this.container.wrap('<div class=" '+b+'"></div>'); 
this.buttonPrev=g(".jcarousel-prev",this.container); 
if(this.buttonPrev.size()===0&&this.options.buttonPrevHTML!==null)this.buttonPrev=g(this.options.buttonPrevHTML).appendTo(this.container); 
this.buttonPrev.addClass(this.className("jcarousel-prev")); 
this.buttonNext= g(".jcarousel-next",this.container); 
if(this.buttonNext.size()===0&&this.options.buttonNextHTML!==null)this.buttonNext=g(this.options.buttonNextHTML).appendTo(this.container); 
this.buttonNext.addClass(this.className("jcarousel-next")); 
this.clip.addClass(this.className("jcarousel-clip")).css({position:"relative"}); 
this.list.addClass(this.className("jcarousel-list")).css({overflow:"hidden",position:"relative",top:0,margin:0,padding:0}).css(this.options.rtl?"right":"left",0); 
this.container.addClass(this.className("jcarousel-container")).css({position:"relative"}); 

ответ

1

Вы можете сделать нечто подобное:

$.mycarousel = function(e, o) { 
var $elfCarousel = $(e).jcarousel(o), 
$actionsContainer="<div class='other_actions'></div>"; 
$elfCarousel.wrap("<div></div>").append($actionsContainer); 
$actionsContainer.append("<div>bottom Next</div>").click(function(){ 
    $elfCarousel.find(".jcarousel-next").click(); 
}) 
$actionsContainer.append("<div>your other button here</div>").click(function(){/* your other action here*/}) 
$actionsContainer.append("<div>your last button here</div>").click(function(){/* your last action here*/}) 
} 

Создавая свой собственный плагин обертывание jcarousel вы получите выгоду от исправлений ошибок jcarousel ,

+0

Спасибо blobmaster. У меня есть нулевые навыки работы с JavaScript и интересно, что вы собираетесь делать в разделах, которые вы сказали «ваше другое действие здесь»? – user537137

+0

, если вы хотите объявить «перейти на 3 изображения справа или снизу, вы можете сделать: $ elfCarousel.find («. Jcarousel-prev »). Click(). Click(). Click(); если вы посмотрите на код плагинов jcarousel (http://sorgalla.com/projects/jcarousel/lib/jquery.jcarousel.js), вы увидите другие «привязки», которые можно назвать – blobmaster