On window scroll I\'m doing ajax request like this
$(window).scroll(function(){
//doing ajax request
});
but it is creating multiple ajax
This question offers one solution.
Another way to do this, rather than a timer, is to simply set a flag that indicates that an ajax request is already running, and to do nothing until the flag is cleared by the original request. You could also set a timer after the flag is cleared, if you wanted the ajax requests to not happen any more often than some arbitrary frequency (e.g. no more often than every 5 seconds).