Я думаю, это потому, что браузер перезагружает содержимое div каждый раз, когда скрывает / показывает его.
Попробуйте вместо этого:
$('#target').css('visibility', 'hidden'); //hide
$('#target').css('visibility', 'visible'); //show
Вы должны заметить, что при использовании 'видимости' пространство, в котором находился элемент, не будет занято другими элементами, элемент просто становится невидимым, а не исчезает. это можно исправить с помощью абсолютной позиции.
Удачи!