$dropDowns.forEach((el) => {
el.addEventListener("click", () => {
const menu = el.querySelector('.dropdown_menu')
if (menu.classList.contains('active')) {
menu.classList.remove("active")
} else {
menu.classList.add("active")
$dropMenus.forEach((element) => {
if (element === menu) {
return
} else {
element.classList.remove("active")
}
});
}
});
});
$dropDowns.forEach((el) => {
el.addEventListener("click", (e) => {
$dropDowns.forEach( element => element.classList.remove("active") );
e.target.classList.toggle("active");
});
});
let dotContainer = document.querySelector('.slide_dots');
let dotList = [... this.slides].map(slide => {
const dot = document.createElement('div');
dot.classList.add('dot');
dotContainer.appendChild(dot);
return dot;
});
console.log( dotList ); // [ <div></div>, <div></div>, <div></div>, ... ]
min-width: 370px;
, поэтому при сужении они не сжимаются меньше или что-то я не понял?).post_item:not(:last-child) {
margin-right: 20px;
}
this.offsetSlide = ((this.slides[1].offsetLeft - this.slides[0].offsetWidth)*100)/this.main.offsetWidth;
, то есть по клику на кнопки высчитываем процентное соотношение отступа. Пришлось добавить её и для кнопки назад и вперед (81 и 97 строки).document.addEventListener("DOMContentLoaded", function() {
const filters = document.querySelectorAll("[data-filter]");
Array.from(filters).forEach(filter => {
filter.addEventListener("click", function(event) {
event.preventDefault();
const categoryName = filter.dataset["filter"];
const categories = document.querySelectorAll("[data-cat]");
if (categoryName === "all") {
Array.from(categories).forEach(category =>
category.classList.remove("hide")
);
} else {
Array.from(categories).forEach(category => {
const workCat = category.dataset["cat"];
if (workCat !== categoryName) {
category.classList.add("hide");
} else {
category.classList.remove("hide");
}
});
}
});
});
});
let cat = this.dataset.filter;
let cat = this.getAttribute('data-filter');
// jQuery
$el.slideUp();
$el.slideDown();
// Нативно
const originHeight = '100px';
el.style.transition = 'height 3s';
// slideUp
el.style.height = '0px';
// slideDown
el.style.height = originHeight;