$( "#messageForm" ).submit( function(e) { e.preventDefault();
var nameVal = $( "#nameInput" ).val();
var msg = $( "#messageInput" ).val();
var canalVal = $( "#canalInput" ).val();
var socketEmitLastCallTime = 0;
var aqwsde = Date.now() - socketEmitLastCallTime;
if(aqwsde >= 3 * 1000) {
socketEmitLastCallTime = Date.now();
socket.emit( 'message', { name: nameVal, message: msg, canal: canalVal } )
$( "#messageInput" ).val('');
// Ajax call for saving datas
$.ajax({
url: "./ajax/insertNewMessage.php",
type: "POST",
data: { name: nameVal, message: msg, canal: canalVal },
success: function(data) {
}
});
};
});
Вписал в код свой, но никакой задержки нет. Что не так? var socketEmitLastCallTime = 0;
var aqwsde = Date.now() - socketEmitLastCallTime;
if(aqwsde >= 3 * 1000) {
socketEmitLastCallTime = Date.now();
socket.emit( 'message', { name: nameVal, message: msg, canal: canalVal } )
};
правильно будет? //socket.emit( 'message', { name: nameVal, message: msg, canal: canalVal } )
отрабатывала не чаще 3 сек. Т.е. получается ее надо писать так: var socketEmitLastCallTime = 0;
$('a').click(function(){
var aqwsde = Date.now() - socketEmitLastCallTime;
if(aqwsde >= 3 * 1000) {
socketEmitLastCallTime = Date.now();
socket.emit( 'message', { name: nameVal, message: msg, canal: canalVal } )
};
});
?