jQuery img исчезать / исчезать в том же DIV, и только один тег img - PullRequest
0 голосов
/ 07 апреля 2011

Хорошо, я пытался найти что-то, что мне нужно, но не нашел его ...

У меня есть сценарий слайд-шоу (с этого сайта http://opiefoto.com/articles/slider)), и я хотел бы иметь эффекты плавного увеличения / уменьшения на основной картинке при их изменении ...

Дело в том, что я почти не знаю js, так что я немного потерян здесь ... Я знаю, что он не складывает изображения, он использует один DIV и один тег IMG внутри него, и когда длительность достигает 0, он меняет путь src ...

Итак, я пытался это:

if(this.data[key]['intervalCycle'] ***HERE's where I need to know how to****) $('#picture').fadeOut(1000); $("#picture").fadeIn(1000);

Поскольку он использует один и тот же div, #picture - это как исчезающее изображение, так и следующее. «PeriodCycle» - это моя 5-секундная продолжительность изменения изображения. Например, он работает именно тогда, когда таймер сбрасывается (когда он меняет картинку), поэтому эффект, который достигается здесь: - изображение изменилось, вы можете увидеть его с первого взгляда; - начинает угасать; - возвращается, исчезая; - остаться еще на 3 секунды; - поменяй картинку, можешь снова увидеть новую, повторить ... Как мне «если» что-то наподобие, если оно «почти закончилось» (например, через 1 секунду), оно исчезнет?

EDIT:

 displayMainImage: function(img){ 
     var newSrc = ($(this).get())[0].src; 
     var args = this.args; 
     var key = args['key']; 
     var id = args['id']; 
     var main = $('#'+key+' .photoslider_main'); 
     var mainImg = $('#'+key+' .photoslider_main img').get(0);                      
     $(mainImg).attr('src',newSrc); }; //----this is where it changes the picture  

     play: function(key){ 
       if(this.data[key]['paused']){ 
         this.data[key]['intervalCycle'] = setInterval(function({      
            PHOTO.Slider.cycleImage(key);
         },PHOTO.Slider.duration); 
       }; 
       this.data[key]['paused'] = false; 
     };

--- автозапуск по умолчанию установлен в моем index.html мне нужно что-то вроде if(this.data[key]['intervalCycle'] ниже, чем, скажем, 1 сек )$('#picture').fadeOut(999);, затем исчезнуть в

...