Посмотрел коды. Это не так делается. Для fade используется css transition и парочка img
img_onload=function(){
p_load.style.display='none';
if(p_img_top.classList.contains('opacity100'))
p_img_bot.src=this.src;
else
p_img_top.src=this.src;
p_img_top.classList.toggle('opacity100');
p_img_bot.classList.toggle('opacity100');
},
Этот кусок для произвольных размеров img в произвольном контейнере. Для фиксированного размера анимируется только верхний img.
и для подвижек - аналогично. Потому что подвижки вручную, то есть через style.left например, идут через layout, и медленно, а через css - быстрее.