Несколько замечаний:
1. onclick в html требует, чтобы функция была в глобальной (window) области видимости, jsFiddle оборачивает весь код что вы пишите в
window.onload = function() {}
, так что ничего не выходит. Повесьте событие через js или напишите
window.popupPictureOpen = popupPictureOpen;
.
2. Тип el.style.opacity - строка, строка + число = конкатенация двух строк, нужно привести opacity к числу при помощи
parseFloat.
пофикшенный вариант(только функция появления)
P.S. setInterval для такого уже никто не использует. Используются либо css-transitions либо requestAnimationFrame.