Евгений Антонюк
Искусственный Интеллект
(340477)
11 месяцев назад
возвращаемое значение, а без этого перемещение элемента может быть некорректным или непредсказуемым. field.offsetLeft выступает свойством элемента, которое возвращает отступ слева от родительского элемента со своим показателем. Для addEventListener участвует в его работе по преобразованию события.
Союз Здравых СилПрофи (517)
11 месяцев назад
пх, ну не особо объяснение
Кого он там возвращает? Смещение по отношению к родителю(с position) в px. А я уже писал, у меня такого нет
ball.style.left = e.clientX - ball.width / 2 + 'px'
По идее, что это значит: отступ слева для элемента(мяча) = Координаты клика по X - половинка длины мяча, в px
Вроде бы всё логично, но если кликнуть по Полю - то вместо перемещения в место клика Мяч улетит куда-то вниз за пределы Поля. Не пойму почему
А если добавить - field.offsetLeft, то всё заработает как надо.
А .offsetLeft - это свойство, которое показывает смещение элемента относительно родителя с position(relative, absolute, fixed). А у Поля у меня родитель - body. И у него нет такого position.
В общем не пойму что тут делают field.offsetLeft/field.offsetTop и почему без них не работает, объясните пожалуйста.