Использовать событие OnLoad image в JavaScript.Другими словами, не загружайте новое изображение, пока последнее не будет загружено полностью.
Возможно, вам не следует использовать панель обновления.Тег изображения (включая его размер, внешний вид и положение) остается прежним;это источник, который меняется.Вместо того, чтобы обновлять все, я предлагаю сделать следующее на стороне клиента :
- В начале загрузите первое изображение (без панели обновления).
- Добавьте слушателя к событию
OnLoad
в <img />
на стороне клиента. - Когда изображение полностью загрузится, перезагрузите его, запросив у сервера более свежее изображение.Например, вы можете рассмотреть возможность использования страницы ASP.NET
Camera.aspx
, которая обслуживает самые последние изображения, полученные с камеры.Чтобы убедиться, что страница действительно запрашивается, измените свойство src
элемента <img />
на Camera.aspx?t=1
, Camera.aspx?t=2
и т. Д.
На стороне сервера (поэтому здесь нет JavaScript), захваченные изображения хранятся в базе данных, поэтому Camera.aspx
будет запрашивать последнюю сохраненную запись, извлекать ее и отправлять непосредственно клиенту (указав соответствующий Response.ContentType
и используя Response.OutputStream
).
Чтобы добиться лучшего визуального отклика, вы также можете рассмотреть возможность использования двух элементов изображения параллельно: когда загружается первый элемент, отображается второй, и наоборот. может быть лучше, но я не уверен, поэтому проверьте, прежде чем выбрать подходящий метод.