Prueba $(img).load (página 1)

El evento onLoad de la imagen es lanzado correctamente al cargar la primera vez la página o al refrescar (vuelve a descargar la imagen), pero no en las siguienes visitas a esta debido a que la imagen está cacheada y es cargada inmediatamente. La página 2 contiene la misma imagen que esta página y el mismo código para detectar su carga. Si navegamos ahora entre las páginas 1 y 2, el evento onLoad no es lanzado. En cambio, si actualizamos la página (en algunos casos) si.

Los navegadores y versiones que parecen reproducir este error son los siguientes (versiones Windows):

Página 1
Página 2
Prueba sin jQuery
Solución
Solución sin jQuery

$(document).ready(function() {
	$("#headerImg").load(function() {
		alert("carga de imagen completada");
	})
});
Post original