Tôi đang làm việc để xây dựng một plugin jQuery AutoSuggest, lấy cảm hứng từ sự chú ý của Apple.Hiệu quả AutoSuggest với jQuery?
Đây là mã chung:
$(document).ready(function() {
$('#q').bind('keyup', function() {
if($(this).val().length == 0) {
// Hide the q-suggestions box
$('#q-suggestions').fadeOut();
} else {
// Show the AJAX Spinner
$("#q").css("background-image","url(/images/ajax-loader.gif)");
$.ajax({
url: '/search/spotlight/',
data: {"q": $(this).val()},
success: function(data) {
$('#q-suggestions').fadeIn(); // Show the q-suggestions box
$('#q-suggestions').html(data); // Fill the q-suggestions box
// Hide the AJAX Spinner
$("#q").css("background-image","url(/images/icon-search.gif)");
}
});
}
});
Vấn đề tôi muốn giải quyết tốt & trang nhã, không giết chết các sever. Ngay bây giờ, mã ở trên sẽ truy cập vào máy chủ mỗi lần bạn nhập một khóa và không chờ đợi để bạn hoàn thành việc nhập văn bản. Cách tốt nhất để giải quyết vấn đề này là gì? A. Giết yêu cầu AJAX trước đó? B. Một số loại bộ nhớ đệm AJAX? C. Thêm một số loại trì hoãn để chỉ gửi .AJAX() khi người đó đã ngừng nhập 300ms trở lên?
bạn đã xem xét các plugin autocomplete mới từ jQuery UI http://jqueryui.com/demos/autocomplete/? – PetersenDidIt
jQuery không phải là từ viết tắt. – SLaks
@nobosh: tôi đang sau khi triển khai thực hiện tự động hiệu quả mà không giết máy chủ và nếu bạn có thể đến với một cái gì đó bạn nghĩ rằng hiệu quả của nó sẽ bạn chia sẻ mã phía máy chủ mẫu? - cảm ơn. –