fancybox - пользовательская кнопка

0

Я пытаюсь добавить пользовательскую кнопку к помощнику кнопки FancyBox 2. Новая кнопка отображается в порядке, но я не могу получить никакого действия по клику с ней... привязка ничего не делает при нажатии. В чем секрет добавления вашей собственной кнопки?

Вот что я пытался сделать, чтобы проверить кнопку на клике, чтобы увидеть, работает ли она. Ничего не произошло.

// init the screenshots
$(".fancybox-screenshots").fancybox({
    prevEffect      : 'none',
    nextEffect      : 'none',
    helpers     : {
        title   : { type : 'inside' },
        buttons : {}
    },
    afterShow: function(){
        $('#fancybox-buttons').on("click", "#btnTest", function(event){
            event.preventDefault();
            alert('testing');
        });
    } //  afterShow
});

Вот вывод вспомогательной кнопки:

<div id="fancybox-buttons" class="top">
    <ul>
        <li>
            <a class="btnPrev" href="javascript:;" title="Previous"></a>
        </li>
        <li>
           <a class="btnPlay" href="javascript:;" title="Start slideshow"></a>
        </li>
        <li>
           <a class="btnNext" href="javascript:;" title="Next"></a>
        </li>
        <li>
           <a class="btnToggle" href="javascript:;" title="Toggle size"></a>
        </li>
        <li>
           <a id="btnTest" href="javascript:;" title="Test Button"></a>
        </li>
        <li>
           <a class="btnClose" href="javascript:;" title="Close"></a>
        </li>
    </ul>
</div>

РЕДАКТИРОВАТЬ :

Я включил jsfiddle - скрипку - кнопка, которую я добавил в скрипке, является второй и последней... в этом случае это еще один переключатель между переключением и закрытием. Мне не хотелось добавлять изображения для моей кнопки. Исправлено css.

  • 0
    можешь добавить jsfiddle?
  • 0
    какую кнопку вы пытаетесь добавить, для какой цели?
Показать ещё 1 комментарий
Теги:
fancybox
fancybox-2

1 ответ

1
Лучший ответ

Вот ваша скрипка, обновленная jsfiddle

afterShow: function (opts, obj) {
  $('#fancybox-buttons').on("click", "#btnTest", function(event){
        event.preventDefault();
        alert('testing');
}
  • 0
    Приятно! Так что все, чего мне не хватало за все это время - прохождение опций и объектов. Из любопытства, что они представляют?
  • 0
    В пользовательском событии click эти параметры не используются. Однако он используется для других кнопок, таких как play и т. Д. См. Код в скрипте. Я просто добавил событие click в конце, чтобы у dom был элемент, и он правильно связывал click
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню