我正在使用下面的jQuery。 div盒向上滑動,5秒鐘後淡出。有沒有辦法達到這個目的,因爲盒子出現需要很長時間。jQuery如何上傳延遲?
$(document).ready(function() {
$("#load_limit").slideUp(500); //have tried "fast" also
$("#load_limit").delay(5000);
$("#load_limit").slideDown(500);
});
我正在使用下面的jQuery。 div盒向上滑動,5秒鐘後淡出。有沒有辦法達到這個目的,因爲盒子出現需要很長時間。jQuery如何上傳延遲?
$(document).ready(function() {
$("#load_limit").slideUp(500); //have tried "fast" also
$("#load_limit").delay(5000);
$("#load_limit").slideDown(500);
});
您可以在回調函數延時:
$(document).ready(function() {
$("#load_limit").slideUp(500, function() {
$("#load_limit").delay(5000).slideDown(500);
});
});
或者你可以簡化它:
$(document).ready(function() {
$("#load_limit").slideUp(500)
.delay(5000)
.slideDown(500);
});
有限公司de:http://jsfiddle.net/xjEy5/2/
沒有理由做任何一個。 'delay'將等待'slideUp'完成。增加一個額外的500毫秒會延遲一個額外的500毫秒。 – 2012-02-08 16:20:43
是的,你說得對。我已經刪除了額外的時間。 – Samich 2012-02-08 16:27:16
上面的代碼究竟有什麼問題?它看起來功能(除了你了slideDown /效果基本show,沒有淡出當你在指令中指示)
下面就來達到同樣效果的替代方法:
jQuery(function($) { // same as $(document).ready() but no conflicts :)
$('#load_limit').slideDown(500, function() {
var self = this;
setTimeout(function() {
$(self).fadeOut(500);
}, 5000);
});
});
這完成了什麼? – 2012-02-08 16:16:01
減少在您的.slideUp()
任何您需要的時間。這裏有一個例子:
$("#load_limit").slideUp(50).delay(5000).slideDown(50);
在50ms的,你真的不看.slideUp()
效果,如果你的內容的高度小。這就是爲什麼使用.hide()
代替它更好。
我將如何使用隱藏 - >請舉例嗎? – TheBlackBenzKid 2012-02-08 16:31:51
$(「#load_limit」)。hide()。delay(5000).show(); – Uzbekjon 2012-02-08 16:35:20
找到div,等待n秒,然後用n毫秒的過渡時間向上滑動。
$("#div").delay(5000).slideUp(1000);
您是否希望延遲更短? – summea 2012-02-08 16:14:20
@TheBlackBenzKid:您發佈的代碼應該可以正常工作。你有什麼問題? – 2012-02-08 16:15:41
你的代碼有什麼問題?是否div需要很長時間才能顯示,並且jQuery在加載之前觸發? – j08691 2012-02-08 16:17:27