document.addEventListener('click', function(e) {
if (!e.target.closest('.tileset-showitems')) {
tilesetShowListRemove();
}
});
- .active {
+ .active .box {
const containerSelector = '.tileset-showitems';
const buttonSelector = `${containerSelector} .tileset-showitems-trigger`;
const activeClass = 'active';
const closeAllExcept = container => document
.querySelectorAll(`${containerSelector}.${activeClass}`)
.forEach(n => n !== container && n.classList.remove(activeClass));
document.addEventListener('click', ({ target: t }) => {
const button = t.closest(buttonSelector);
const container = t.closest(containerSelector);
if (button) {
container.classList.toggle(activeClass);
}
closeAllExcept(container);
});
window.addEventListener('keydown', e => e.key === 'Escape' && closeAllExcept());
SELECT film.id, film.name, film.descrioption,
actor.id actor_id, actor.name actor_name,
genre.id genre_id, genre.name genre_name
FROM films
LEFT JOIN films_genres ON film.id = films_genres.film_id
LEFT JOIN genre ON genre.id = films_genres.genre_id
LEFT JOIN films_actors ON film.id = films_actors.film_id
LEFT JOIN actor ON actor.id = films_actors.actor_id
WHERE films_actors.actor_id IN (734, 44) -- актеры такие-то
AND films_genres.genre_id = 3 -- жанр такой-то
div {
width: 150px;
height: 150px;
padding: 10px;
margin: 10px;
border: 10px solid #999;
}
let div = document.querySelector('div'),
cs = getComputedStyle(div);
console.log(div.offsetWidth + parseInt(cs.marginLeft) + parseInt(cs.marginRight)); // 210
Я front-end dev, сейчас осваиваю React, очень нравится.
Что лучше учить после front-end-a, Node.js или PHP??
Спору нет, с ним верстать более удобно и быстро, нежели без него- с этим я полностью не согласен, так как CSS Grid System гораздо удобнее и мощнее (и в сотни раз быстрее)!