我正在研究一些 js/jQuery,但我遇到了一个问题。
有一个计时器应该每 x 秒执行一次功能。然而,问题在于计时器似乎只执行一次。我问了一些朋友,但他们也不知道出了什么问题。
所以,如果有人有线索,请!
<script type="text/javascript">
var id = 0;
var count = 0;
var obj;
console.log(id);
function getTweetsWithQuery(q) {
console.log('getTweetsWithQuery did run');
$.ajax({
type: "GET",
url: "ajax.php",
data: "q=" + q,
success: function(msg){
obj = jQuery.parseJSON(msg);
start();
}
});
console.log('getTweetsWithQuery finished');
}
function updateTweets(obj) {
var count = 0;
$('#tweet' + id).animate({opacity: 0}, 1).delay(500);
$('#tweet' + id).text(obj[count].text);
$('#tweet' + id).delay(500).animate({opacity: 1}, 500);
console.log(obj[count].text);
console.log('updateTweets did run');
if(id == 9){
id = 0;
}else {
id++;
}
if(count == obj.length){
count = 0;
}else {
count++;
}
console.log('Next id: ' + id);
console.log('Next count: ' + count);
}
function start() {
console.log('start did run')
var timer = $.timer( updateTweets(obj) );
timer.set( { time : 500, autostart : true } );
}
</script>
从 html 中调用 getTweetsWithQuery() 函数。