if (e.target.classList.contains("item")) {
value.innerHTML = e.target.parentNode.dataset.text;
} else {
value.innerHTML = '';
}
transform=translate()
<path d="m 0 0 c-118.35-13.036-33.219 195.03-196.4 83.472" fill="none" stroke="#000" stroke-width=".2" id="path" transform="translate(241.82 50.942)"/>
<circle cx="241.82" cy="50.942" r="7.3" fill="#fff" stroke="#006700" id="circle" />
.graphic--nao {
stroke: #fff;
pointer-events: none;
transition: transform 0.7s, stroke 0.7s;
transition-timing-function: ease, ease;
transition-timing-function: cubic-bezier(0, 0.25, 0.5, 1);
}
.graphic {
position: absolute;
top: 0;
left: 0;
fill: none;
}
document.addEventListener("click", (e) => {
let currentId = "";
if (e.target.classList.value === "playing-field-item") {
currentId = e.target.id;
}
console.log(currentId);
})
function output(value) {
const digits = document.querySelectorAll('селектор span`ов');
const { length } = digits;
Array
.from(`${value}`.padStart(length, 0).slice(-length))
.forEach((n, i) => digits[i].innerText = n);
}
function output(value) {
document.querySelector('селектор родительского элемента span`ов').innerHTML = Array
.from(`${value}`, n => `<span>${n}</span>`)
.join('');
}
.item
присваиваете высоту .hidden
. Там ещё label
рядом лежит, у которого своя высота есть + бордер + маргин. Замените 70 в расчёте h
на высоту лейбла + его нижний маргин, и логика будет правильной. А ещё лучше просто сделайте так: let h = parent.scrollHeight;