Если одна и та же форма вызывается в попапах на странице несколько раз, то как обратиться к родителю конкретной форме, т.к. this не работает?
Но так, естественно, новый класс прикрепляется ко всем попапам.
document.addEventListener('wpcf7submit', (e) => {
if ('123' === e.detail.contactFormId) {
const form = e.target;
const modalBody = form.closest('.modal-body');
if(modalBody) {
modalBody.classList.add('thanks-this');
}
else {
console.log('Творится какая то дичь!');
}
}
});
const classContainer = 'selectboxss';
const classOption = 'selectoption';
const getClasses = el => [...el.classList].filter(n => n !== classOption);
//const getClass = el => el.className.match(RegExp(`${classOption}-\\d+`))[0];
document.addEventListener('click', ({ target: t }) => {
if (t.classList.contains(classOption)) {
const container = t.closest(`.${classContainer}`);
const { classList } = container;
classList.remove(...[...container.querySelectorAll(`.${classOption}`)].flatMap(getClasses));
classList.add(...getClasses(t));
//classList.remove(...Array.from(container.querySelectorAll(`.${classOption}`), getClass));
//classList.add(getClass(t));
}
});
jQuery(document).ready(function($) {
document.addEventListener('wpcf7mailsent', function(event) {
var id = event.detail.contactFormId;
var popupId = 'pamyatka-popap-<?php echo get_row_index(); ?>';
// Проверяем, находимся ли мы внутри попапа с определенным ID
if ($(event.target).closest('#' + popupId).length) {
if (id == 19124) {
window.open("<?php echo esc_url($m_dobavit_knopku['url']); ?>", '_blank');
}
}
}, false);
});
$('.config-button a').click(function (){
$(this).parents('.config-col').find('.config-options-text li.active').each(function( key, value ) {
$('.popap-communications-row').append(value.outerHTML);
});
});
slidesPerView: 3.5 // Показать три с половиной слайда, как на примере 1
slidesPerView:1.5,
centeredSlides: true, //в связке с slidesPerView: 1.5 встанет как на примере 2
const groupSelector = 'fieldset.js-tree-box';
const mainSelector = 'legend input';
const itemSelector = 'legend + span input';
const activeClass = 'active';
document.addEventListener('change', ({ target: t }) => {
const group = t.closest(groupSelector);
if (group) {
const main = group.querySelector(mainSelector);
const items = [...group.querySelectorAll(itemSelector)];
if (main === t) {
items.forEach(n => n.checked = t.checked);
} else {
main.checked = items.every(n => n.checked);
}
group.classList.toggle(activeClass, main.checked);
}
});