我有一些代碼,我正在寫,試圖在我的網站與即時搜索結果融合bing搜索API。我使用jquery的keyup函數將數據發送到我的服務器端腳本,然後獲取bing search xml並顯示結果。jquery鍵盤功能之間的延遲
我擔心的是,我會讓我的腳本太多無情的命中。 有人可以看看這個,並告訴我如何我可以把鍵盤之間1秒的延遲作爲一個計時器?所以它只會每隔一秒左右更新一次reults
這是我迄今爲止創造的,但我不知道它的正確嗎?
<script type="text/javascript">
var delay = (function() {
var timer = 0;
return function(callback, ms) {
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})();
function reloadsearch() {
var searchterms = $('#q').val();
if (searchterms.length >= 3) {
delay(function() {
var data = 'source=ajax&q=' + searchterms;
$.ajax({
type: "GET",
url: "results/",
data: data,
success: function(html) {
if (html !== '') {
$("#search-results").html(html);
$("#search-results").fadeIn(500);
}
}
});
}, 250);
}
else
{
$("#search-results").fadeOut(250);
}
};
$('#q').keyup(function() {
reloadsearch()
});
$(document).ready(function() {
reloadsearch()
});
檢查了這一點http://api.jquery.com/delay/ – 2010-12-03 17:27:14
我如何把在我現有的代碼?對不起,我不是那麼明亮... :) – Frank 2010-12-03 20:12:07
更新了anser;)現在希望它的作品! – 2010-12-03 23:32:21