0
我試圖從html中顯示下一個文本之前顯示的值中設置單獨的持續時間。我想也許我可以爲jquery.delay設置一個變量(多麼大),但它只是通過第一個「data-howlongtime」爲其餘的變量獲取值。 JSFiddle。除了一切之外,我做錯了什麼?從html數據設置jquery延遲
<div id="aboutid" data-howlongtime="10000">
<p class="abouts">Less delay</p>
</div>
<div id="aboutid" data-howlongtime="20000">
<p class="abouts">Long delay</p>
</div>
<style>.abouts {display: none;}</style>
<script>
var delayabout=1700;
var howlong = $('#aboutid').data('data-howlongtime');
(function() {
var abouts = $(".abouts");
var aboutIndex = -1;
function showNextabout() {
++aboutIndex;
abouts.eq(aboutIndex % abouts.length)
.fadeIn(2000)
.delay(howlong)
.fadeOut(2000, showNextabout);
}
setTimeout(function(){
showNextabout();
}, delayabout);
})();
</script>
的ID應該是唯一的,如果你不遵守,你會得到意想不到的behavior.Try改變'aboutid'一類,然後讓每個'數據howlongtime' –
使用一個類而不是ID的 –