javascript jquery
Нужна небольшая помощь чайнику-
-->
$(document).ready(function(){
function start(){
var x = document.getElementsByTagName('p');
for(var i=0; i
This paragraph
Next paragraph
One more paragraph
переменная i не передается в setTimeout("$('p:eq(i)').fadeOut(3000)", 3000);
В чем ошибка? ( Пожалуйста для чайника.)
|
Во-первых писать в setTimeout первым аргументом строку -- довольно плохая идея, лучше вставить туда функцию. А ничего не получается из-за того, что к моменту выполнения "$('p:eq(i)').fadeOut(3000)" переменная i уже успела на сто рядов измениться. Надо делать так:
for(var i = 0; i < len; i++){
(function(i){
setTimeout(function(){
$('p').eq(i).fadeOut(3000); // тут у вас, кстати, тоже была ошибка
}, 3000);
})(i); // зачем так делать смотрите в разделе "Замыкания" справочника
}