div p {
pointer-events: none;
}
document.querySelector('div').addEventListener('click', e => {
console.log(e.currentTarget); // Будет див, даже если кликнули на внутренний элемент
});
document.querySelector('div').addEventListener('click', e => {
console.log(e.target.closest('div'));
// Будет НАЙДЕН див, внутри которого, или на нем самом кликнули
});
<input type="hidden" name="e_sale" value="0">
<input type="checkbox" id="e_sale" name="e_sale" value="1">
function run(cb) {
directionsService.route(route,
function(response) {
// ...
let distKm = parseInt(dist / 1000);
cb(distKm);
}
});
}
run(function(result){
console.log(result);
})
document.getElementById('btn-next').onclick = () => {
run(function(result){
console.log(result);
})
};
.position()
Description: Get the current coordinates of the first element in the set of matched elements, relative to the offset parent.
let s1 = '1';
let s2 = '2';
console.log(s1 + s2); // '12'
let n1 = 1;
let n2 = 2;
console.log(n1 + n2); // 3
let s1 = '1';
let n2 = 2;
console.log(s1 + n2); // '12'
parseInt()
- в целое числоparseFloat()
- в число с плавающей точкойNumber()
- можно еще так+n2
- или так (это уже своего рода хак, основанный на приведении типов)Number(element1.innerHTML) + Number(element2.innerHTML)
const toggler = document.getElementById('menu-toggle');
const menuLinks = document.querySelectorAll(".menu-link");
for (let el of menuLinks) {
el.addEventListener("click", () => {
toggler.checked = !toggler.checked;
// toggler.checked = false; // или так
});
}
f = () => {
return {
...fields
}
}
f = () => {
...fields
}
f = () => ({
...fields
})
<div class="body">
<button class="button">B1</button>
<div class="content">Content 1</div>
<button class="button">B2</button>
<div class="content">Content 2</div>
<button class="button">B2</button>
<div class="content">Content 2</div>
</div>
определять position относительно блока с position: relavive
<div class="answer-block">
<button class="viewAnswer"> </button>
<button class="closeAnswer"></button>
<div class="answer-comment"> .... </div>
</div>
const answers = document.querySelectorAll('.answer-block');
answers.forEach(answer => {
const open = answer.querySelector('.viewAnswer'),
const close = answer.querySelector('.closeAnswer');
const comment = answer.querySelector('.answer-comment'),
open.addEventListener('click', function(){
comment.style.display = 'block';
open.style.display = 'none';
close.style.display = 'block';
});
close.addEventListener('click', function(){
comment.style.display = 'none';
open.style.display = 'block';
close.style.display = 'none';
});
});