2014-11-04 25 views
1

我有多個對象需要應用。 delay().fadeIn()函數,但函數需要按照data-rel數字的順序應用。在data-rel命令中應用相同的函數

而且,我需要延遲100爲每個對象增加...

這裏是一個jsFiddle工作。

我需要它的 data-rel="1"以淡入與延遲0 data-rel="2"以淡入與延遲100 data-rel="3"以淡入與延遲200

HTML:

<div class="fadein"> 
    <p class="me" data-rel="1">1</p> 
    <p class="me" data-rel="3">2</p> 
    <p class="me" data-rel="2">3</p> 
</div> 

SCRIPT:

$(".me").hide(); 

    $(".me").each(function() { 
    $(this).delay(0).fadeIn(500); 
    }); 

回答

1

只要計算delay取決於值rel

$(".me").each(function() { 
    var el = $(this), 
     rel = el.data("rel"), 
     delay = (rel - 1) * 100; 

    el.delay(delay).fadeIn(500); 
}); 

fiddle

+0

大,它的工作很好,謝謝:d – Alin 2014-11-04 10:50:17

+0

不客氣:) – Andreas 2014-11-04 10:53:59

1

這工作。

$(".me").hide(); 
var waiter = 0; 
    $(".me").each(function() { 
    $(this).delay(waiter).fadeIn(500); 
     waiter += 100; 
}); 

http://jsfiddle.net/shvu07s2/4/

編輯:

$(".me").hide(); 
var waiter = 0; 
    $(".me").each(function() { 
     waiter = $(this).attr('data-rel')*1000-1000; 
    $(this).delay(waiter).fadeIn(500); 
}); 

http://jsfiddle.net/shvu07s2/8/

+0

都能跟得上它不:)它的工作,如果我沒有需要它來增加根據data-rel號碼的延遲。謝謝你的嘗試:D – Alin 2014-11-04 10:49:21

+0

Ahah ..然後這個: http://jsfiddle.net/shvu07s2/8/ – 2014-11-04 10:50:22

+0

對於工作示例+1:D – Alin 2014-11-04 10:58:06

1

最短:)

$(".me").each(function() { 
    $(this).delay(100*$(this).attr("data-rel")).fadeIn(500); 
}); 
+1

是的,它正常工作,謝謝你的例子。 +1爲你:) – Alin 2014-11-04 11:03:23

1

使用您的數據值,您可以d O此:

$(".me").hide(); 

    $(".me").each(function() { 
    var $this = $(this), 
     relval = $this.data('rel'); 

    $this.delay(0 + relval).fadeIn(500); 
    }); 

http://jsfiddle.net/shvu07s2/7/

+0

那麼這個工程,基達,但我需要(從@Andreas得到)是和自動增加了100的延遲和data-rel只給出了命令...把延遲內data-rel只適用於少數幾個對象,但如果你有很多這樣的對象,它會變得煩人。感謝您的想法,+1的嘗試和示例。 – Alin 2014-11-04 11:01:23

相關問題