Цель состоит в том, чтобы отключить или включить функцию ползунка в зависимости от ширины браузера.
Мой код отлично работает первые пару раз, когда размер окна изменяется с большого на маленькое / маленькое на большое, но затем он прекращает отключение ползунка, когда окно> = 1200 и консоль говорит: «TypeError: this.listeners не определен по отношению к glide.destroy
Я часами гуглял эти ошибки и до сих пор не могу понять. Я совершенно новичок в jQuery, и мне очень тяжело с этим.
var id;
var isMounted = false;
var glide = new Glide("#intro", {
type: "carousel",
gap: "12",
perView: 5,
focusAt: "center",
breakpoints: {
800: {
perView: 2
},
480: {
perView: 1
}
}
});
if (jQuery(window).width() < 1200) {
glide.mount();
isMounted = true;
}
jQuery(window).resize(function() {
clearTimeout(id);
id = setTimeout(doneResizing, 500);
});
function doneResizing() {
if (isMounted === true) {
if (jQuery(window).width() >= 1200) {
glide.destroy();
isMounted = false;
console.log("destroy false");
}
}
if (isMounted === false) {
if (jQuery(window).width() < 1200) {
glide.mount();
isMounted = true;
}
console.log("mount true");
}
}
Глядя на консоль моего браузера, кажется, что в какой-то момент glide.mount()
начинает работать сразу после glide.destroy
, и я не могу понять, почему. Вот что я вижу (имя сайта отредактировано по соображениям конфиденциальности):
JQMIGRATE: Миграция установлена, версия 1.4.1 jquery-migrate.min.js: 2: 552
mount true glide-custom-test-03.js: 44: 34
Слишком большое потребление памяти изменится Ограничение бюджета - это площадь поверхности документа, умноженная на 3 (289296 пикселей). Случаи изменения воли по бюджету будут игнорироваться.
уничтожить ложное скольжение-custom-test-03.js: 38: 36
mount true glide-custom-test-03.js: 44: 34
Ошибка типа: this.listeners - undefinedglide.min.js: 6: 5987
значение - / wp-content / themes / mytheme / js / slider / glide / dist / glide.min.js? Ver = 1.1: 6
unbind - / wp-content / themes / mytheme / js / slider / glide / dist / glide.min.js? Ver = 1.1: 6
Изменение размера - / wp-content / themes / mytheme / js / slider / glide / dist / glide.min.js? Ver = 1.1: 6
значение - / wp-content / themes / mytheme / js / slider / glide / dist / glide.min.js? Ver = 1.1: 6
forEach самостоятельно: 262
значение - / wp-content / themes / apt2c / js / slider / glide / dist / glide.min.js? Ver = 1.1: 6
значение - / wp-content / themes / apt2c / js / slider / glide / dist / glide.min.js? Ver = 1.1: 6
doneResizing - / wp-content / themes / apt2c / js / slider / glide / custom / glide-custom-test-03.js? Ver = 1.1: 37