delay будет никогда задерживать регулярные методы - только те, кто попадает в цепочку анимации/эффекта. Если вы хотите отложить вызов html(), используйте queue (http://api.jquery.com/queue/):
jQuery.delay() лучше всего подходит для отсрочки между параметрами jQuery в очереди и такой, и не является заменой Встроенный JavaScript setTimeout Функция