Если вы хотите заменить предыдущий результат, используйте .html вместо .append. И еще одна вещь, которую вы получаете GIF через ваш URL, и я думаю, что вы получаете слишком много GIF, которые пытаются быть обработаны и занимает много времени. Но когда вы запрашиваете другой запрос на получение перед завершением предыдущего запроса, ваш DOM пытается отобразить предыдущий gif, в то время как новый gif продолжает поступать. Таким образом, если вы получаете новый gif до отображения предыдущего gif, это означает, что ваш новый gif будет отображаться после предыдущего gif, даже если вы используете .empty или .html, потому что ваше предыдущее событие все еще выполняется.
Будьте осторожны, пока вы играете с элементом DOM, и старайтесь не загружать все картинки одновременно, используйте нумерацию страниц.