@Chekhoved

Ошибка при обработке коллекции элементов. Как исправить?

Пытаюсь сделать портфолио с сеткой превьюшками, в которых при наведении мыши просматривается скриншот вёрстки.

Пример на странице (1-й блок) - del

JS для одного превью работает как нужно

window.onload = addIndentPreview;
window.onresize = addIndentPreview;

var projectWrapper = document.querySelector(".js-preview-wrapper"),
    projectImg = document.querySelector(".js-preview-img"),
    wrapperHeight, imgHeight, imgMargin,
    i;

 function addIndentPreview() {
     wrapperHeight = projectWrapper.clientHeight;
     imgHeight = projectImg.clientHeight;
     imgMargin = -(imgHeight - wrapperHeight) + "px";

     projectWrapper.onmouseover = function () {
        projectImg.style.marginTop = imgMargin;
     };
     projectWrapper.onmouseout = function () {
        projectImg.style.marginTop = 0 + "px";
    };
 };


Дальше пытаюсь сделать рабочими все превьюшки, для этого добавляю цикл for в функцию. Но ничего не работает совсем и в консоли браузера появляется ошибка Uncaught TypeError: Cannot read property 'style' of undefined

Закинул код в jsfiddle - https://jsfiddle.net/venczc49
И на странице - del

В чём ошибка, что нужно поправить?
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
DirecTwiX
@DirecTwiX
"display: flex;" уже предлагали?
projectImg.length > 0
=>
i < projectImg.length
https://jsfiddle.net/venczc49/1/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы