Drupal8, создала свою тему. Из файлов html сверстала шапку, подключила js - все работает.
Установила Views Slideshow из статьи два способа слайдшоу.
И тут возникает проблема: слайдшоу работает только на встроенной теме. А в моей только картинки (не листаются)
Пробовала отключать js разные. Бестолку. Но если отлючу js/jquery-3.4.1.slim.min.js: {}, то меню перестает работать, а слайдшоу все равно не работает.
Комплектацию скриптов dependencies всю перепробовала, бестолку.
Слайдшоу работает только в админ теме (друпаловской)
файл libraries
global-css:
css:
theme:
css/style.css: {}
global-js:
js:
js/jquery-3.4.1.slim.min.js: {}
js/script.js: {}
js/respond.min.js: {}
dependencies:
- core/jquery
- core/drupal.ajax
- core/drupal
- core/drupalSettings
- core/jquery.once
Файл script
$(document).ready(function() {
$('.header_burger').click(function(event) {
$('.header_burger,.nav_header_menu,.header_topmenu').toggleClass('active');
$('body').toggleClass('lock');
});
});
Файл respond.min.js
//Adaptive functions
$(window).resize(function(event) {
adaptive_function();
});
function adaptive_header(w,h) {
var nav_header_list=$('.nav_header_list');
var topnavigation=$('.topnavigation');
if(w<767){
if(!topnavigation.hasClass('done')){
topnavigation.addClass('done').appendTo(nav_header_list);
}
}else{
if(topnavigation.hasClass('done')){
topnavigation.removeClass('done').prependTo($('.header_topmenu'));
}
}
}
function adaptive_function() {
var w=$(window).outerWidth();
var h=$(window).outerHeight();
adaptive_header(w,h);
}
adaptive_function();
Если смотреть ошибку браузера, то
Unchecked runtime.lastError: The message port closed before a response was received.
2jquery.cycle.all.js?v=3.0.3:981 Uncaught TypeError: $l.delay(...).animate is not a function
at Function.$.fn.cycle.custom (jquery.cycle.all.js?v=3.0.3:981)
at go (jquery.cycle.all.js?v=3.0.3:706)
at jquery.cycle.all.js?v=3.0.3:91
Уже не знаю где искать. Валидатор не ругается. Похоже что-то с изменением стандартов js или...???
Комментарии
Не нужно трогать ядрёный jquery и уж тем более подключать еще один
Статья моя, кстати
Статья понятная и подробная, спасибо за нее. Это у меня с темой беда какая-то. Удалила скрипт, слайдшоу заработало, меню перестало. Буду тогда меню мучить.
Скорее всего вы в своей теме подключили сторонний jquery или еще что-то что конфликтует с views slidshow. Отключите сторонний jquery, сбросьте кэш друпала, смотрите консоль javascript в браузере
слайдшоу заработало, меню отключилось. За совет спасибо. Конфликт js, хотя бы ясно примерно направление
Все получилось!
Статья https://drupal.ru/docs/videouroki/drupalbookru/88-rabota-s-javascriptjqu...
Достаточно было убрать лишний jquery и код обернуть, чтобы не было конфликта.