Uncaught TypeError: $ (...). LightGallery (...). Destroy не является функцией

Я использую плагин световой галереи на своем веб-сайте, при этом запустив $('#categoryImages').lightGallery().destroy(true);

Я получаю консольную ошибку

Uncaught TypeError: $(...).lightGallery(...).destroy is not a function

приведенный ниже фрагмент кода - это код моего веб-сайта, который я использую для световой галереи.

    $subcategory) { $subcategoryImage= scandir($dir.strtolower($getCategory)."/".$subcategory); unset($subcategoryImage[array_search('.', $subcategoryImage, true)]); unset($subcategoryImage[array_search('..', $subcategoryImage, true)]); foreach ($subcategoryImage as $key => $value2) { $data['subcategoryImages'][]= $dir.strtolower($getCategory)."/".$subcategory."/".$value2;?>
<li class = "col-xs-6 col-sm-4 col-md-3" data-responsive = " 375, 480," data-src = "">

<img class = "img-responsive" src = "">

Код jquery

$('body').on('click', '.category', function() {
    $('#categoryImages').lightGallery().destroy(true);
});

см. мой ответ ниже

madalinivascu 15.06.2018 13:14
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
1
598
2

Ответы 2

По документации должно быть так: http://sachinchoolur.github.io/lightGallery/docs/api.html#methods

var cI = $('#categoryImages');
cI.lightGallery();
$('body').on('click', '.category', function() {        
    cI.data('lightGallery').destroy(true);
});

Обновить скрипку: http://jsfiddle.net/n5w7eoxh/11/

Спасибо за ваш ответ, я использовал который вы поделились "Uncaught TypeError: gal.destroy не является функцией"

Gireesh T 15.06.2018 12:39

Пожалуйста, отправьте свой полный код в скрипке, может быть, я смогу вам помочь

Jagjeet Singh 15.06.2018 12:40

Привет, Джагджит Сингх: Спасибо за ответ. Я использовал световую галерею для своего веб-сайта, начальная страница загружается нормально, при нажатии нескольких флажков с помощью ajax я получаю изображения, относящиеся к категории. Если я выбрал более одной категории, галерея света не работает. Но в консоли не отображаются ошибки.

Gireesh T 15.06.2018 12:52

Не отправляйте здесь свой код, укажите скрипт jsfiddle.net

Jagjeet Singh 15.06.2018 12:59

Привет, Джагджит Сингх: jsfiddle.net/gireesht14/n5w7eoxh эта ссылка откроет мой код, но он связан с включенным динамическим php-кодом

Gireesh T 15.06.2018 13:03

Да, но где вы пытаетесь использовать метод уничтожения

Jagjeet Singh 15.06.2018 13:09

Обновлено, проверьте мой ответ

Jagjeet Singh 15.06.2018 13:26

Привет, Джагджит Сингх: приведенный ниже код мне подходит. Спасибо за вашу помощь var gal = $ ('# categoryImages'); gal.lightGallery (); / ... request.done (function (data) {// ... $ ('. ajxcategoryImages'). html (subcategoryImages1); // добавляем результаты gal.data ('lightGallery'). destroy (true); // уничтожаем текущую галерею gal.lightGallery (); // создаем новую / ..

Gireesh T 15.06.2018 13:39

Вам нужно сохранить ссылку на свой инициализированный плагин, а затем вызвать destroy после завершения ajax, после того, как вы вызовете destroy, вы повторно инициализируете плагин

var gal = $('#categoryImages');
gal.lightGallery();
/...
request.done(function(data) {
//...
$('.ajxcategoryImages').html(subcategoryImages1); //append the results 
  gal.data('lightGallery').destroy(true);//destroy the current gallery
  gal.lightGallery();//create a new one
/..

Другие вопросы по теме