setTimeout не могу понять поведение
Здравствуйте, есть такой вот код, отрабатывает отлично алерт вызывается черзе 2 секунды:
$(document).ready(function(){
$('#search').keyup(function() {
setTimeout(function(){alert('fff')},2000);
});
});
http://jsfiddle.net/BR3j2/ И такой:
$(document).ready(function(){
$('#search').keyup(function(e) {
setTimeout(function($) {
alert($.now());
}(jQuery),2000);
});
});
http://jsfiddle.net/VQt7G/ В случае первого скрипта delay применяется, а во втором нет |
like2dev,
1. Нет библиотеки jQuery ко второму скрипту, 2. Воть эта запись setTimeout(function($) {alert($.now());}(jQuery),2000); абсолютна непонятно, что хотела выразить |
Цитата:
|
Спасибо разобрался :)
$('#searchstring').keyup(function(e) {
$('#searchstring').data('time',e.timeStamp);
var time = e.timeStamp;
var persik = function (time) {
var obj = $("#searchstring");
if(time == obj.data('time')) {
console.log('Ajax...');
$.ajax({
url: '/ajax.php',
dataType: 'html',
async: false,
type: "GET",
data: {type: "search_bar",searchstring: obj.val() },
success: function(response) {
var obj = $('#search_popup');
obj.html(response);
}
});
}
};
setTimeout(function(){persik(time);},500);
});
|
| Часовой пояс GMT +3, время: 04:25. |