colorbox ломается в атрибуте rel при загрузке bxslider - PullRequest
5 голосов
/ 11 ноября 2011

После долгих отладок я пришел к выводу, что эти две библиотеки сталкиваются. Я проверил их оба по отдельности, и они работают, но когда используются вместе (и есть атрибут rel, вещи ломаются)

Как воспроизвести

  • Если ссылка имеет rel или $ ('что-то'). Colorbox ({rel: 'что-то'});
  • $ ( 'somethingelse') bxSlider (...).

colorbox потерпит неудачу при нажатии на любое изображение, имеющее colorbox (не только общие параметры) С:

Uncaught TypeError: Невозможно прочитать свойство 'rel' из неопределенного

Оскорбляющие строки кода:

      if (settings.rel !== 'nofollow') {
          $related = $('.' + boxElement).filter(function () {
              var relRelated = $.data(this, colorbox).rel || this.rel;
              return (relRelated === settings.rel);
          });

Я обнаружил похожую проблему Использую ли я jQuery noconflict, чтобы избежать конфликта плагинов? однако эффект был другим. И все же причина кажется похожей. По словам того, кто отвечает на этот вопрос, проблема в том, что bxSlider удаляет $ .data (), установленный colorbox.

Итак, мои вопросы:

  • Есть ли способ обойти это?
  • Это ошибка в colorbox?
  • Это ошибка в bxSlider?

Ответы [ 2 ]

1 голос
/ 03 июня 2014

Я знаю, что прошло много времени с тех пор, как этот вопрос был задан, но у меня возникла похожая проблема, и после долгих попыток ошибка для меня заключалась в том, что я вызываю colorbox до bxslider, я меняю порядок вызовов, и он работает как чудо. Может, кому-то это поможет.

0 голосов
/ 15 июля 2012

Не видя больше вашего кода, я не могу сказать, что вы пытаетесь сделать. Ваш $('something').colorbox({rel:'something'}); выглядит немного странно, и я не могу сказать, используете ли вы вставку классов, идентификатор или фактическое значение атрибута rel. Вы можете просмотреть опцию rel в colorbox (rel:'thing ') и узнать, как она себя ведет. Смотри http://www.jacklmoore.com/colorbox

Нет проблем, связанных с использованием этих двух плагинов вместе. Я пробовал на jsbin , и он работает без ошибок.

Смотрите здесь для себя: http://jsbin.com/ovucuz/11/edit#javascript,html,live

...