Плавное проявление div через js и opacity?

Всем доброго дня!
Помогите, пожалуйста, разобраться:
1. Почему он тут не работает? (локально хотя бы запускается)
2. По идее скрипт должен плавно менять opacity у popupPicture тем самым плавно проявляя его. Аналогично при выходе - делая прозрачным.
jsfiddle.net
  • Вопрос задан
  • 315 просмотров
Решения вопроса 1
Несколько замечаний:
1. onclick в html требует, чтобы функция была в глобальной (window) области видимости, jsFiddle оборачивает весь код что вы пишите в window.onload = function() {}, так что ничего не выходит. Повесьте событие через js или напишите window.popupPictureOpen = popupPictureOpen;.
2. Тип el.style.opacity - строка, строка + число = конкатенация двух строк, нужно привести opacity к числу при помощи parseFloat.
пофикшенный вариант(только функция появления)
P.S. setInterval для такого уже никто не использует. Используются либо css-transitions либо requestAnimationFrame.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
SagePtr
@SagePtr
Еда - это святое
Потому что в настройках подключаемого яваскрипта на jsfiddle указано Load type = onLoad, а значит, этот яваскрипт будет завёрнут в функцию onload (и функции, объявленные там, будут локальны, а не глобальны)
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы