2012-01-24 29 views

Trả lời

11

Không ai trong số các câu trả lời cho đến nay đưa vào tài khoản mà nó chỉ muốn xảy ra trong vòng 15 giây và sau đó dừng lại ...

$(function() { 
    var intervalID = setInterval(function() { 
     // Do whatever in here that happens every 3 seconds 
    }, 3000); 
    setTimeout(function() { 
     clearInterval(intervalID); 
    }, 18000); 
}); 

Điều này tạo ra một khoảng thời gian (mỗi 3 giây) chạy bất cứ mã bạn đưa trong hàm. Sau 15 giây, khoảng thời gian bị hủy (có thời gian trễ ban đầu là 3 giây, do đó thời gian chạy tổng thể là 18 giây).

+1

+1, nhưng bạn có thể muốn tăng phần mềm '15000'; nếu không thì chức năng nhiều khả năng sẽ chỉ chạy bốn lần, và tôi đoán mục đích là nó sẽ chạy năm lần. – ruakh

+0

Điểm tốt - ít nhất là 18000. Trả lời sửa đổi - cảm ơn :) – Archer

+0

Er, tôi đã suy nghĩ giống như '15500' - vừa đủ để tạo ra một biên độ sai sót tốt. – ruakh

0

Bạn cũng có thể sử dụng phương pháp setTimeout, hỗ trợ những thứ như hủy hẹn giờ.

Xem: http://msdn.microsoft.com/en-us/library/ie/ms536753(v=vs.85).aspx

+0

Không downvote này, nó có thể được sử dụng với một cuộc gọi đệ quy. Mặc dù setinterval là chính xác hơn trong trường hợp này. Simon: Có một phương pháp rõ ràng cũng như btw :) – Johan

+0

+1. 'setTimeout' thực sự tốt hơn. – Aliostad

+0

Vâng, crap trả lời ... xóa :-) – Simon

0
setInterval(function() { 
     // Do something every 3 seconds 
}, 3000); 
0

Sử dụng setInterval chức năng.

var doPost = function() { 
    $('post').each(function() { 
    ... 
    }); 
}; 
setInterval(function() { doPost(); }, 3000); 
1

Bạn có thể sử dụng setTimeout để chạy một hàm sau khi X mili giây trôi qua.

var timeout = setTimeout(function(){ 
    $('post').each(function(){ 
     //do stuff... 
    }); 
}, 3000); 

Hoặc, setInterval để chạy một hàm mỗi X mili giây.

var interval = setInterval(function(){ 
    $('post').each(function(){ 
     //do stuff... 
    }); 
}, 3000); 

setTimeoutsetInterval ID Đổi lại, chúng có thể được sử dụng để xóa thời gian chờ/khoảng thời gian sử dụng clearTimeout hoặc clearInterval.

Các vấn đề liên quan