Es por que cuando abres la pagina con esa URL te esta yendo directamente a la Ancla que creaste, osea a paginahtml.html#MiDiv, recuerda que onClick() es un evento y es disparado (trigger) con la interaccion del mouse.
Una solucion que te pongo es que extraigas el div que estas queriendo validar y basado en eso realices una accion, para ello te pongo un ejemplo que puedes descargar.
El funcionamiento es:
1.- Buscas en el url un signo de gato, lo cual significa que estas usando una ancla,
2.- Si existe buscas el nombre del div y lo comparas con uno que declaras en tu codigo javascript. Como ya sabes cual div estas usando lo defines y trabajas con el.
3.- Una vez que lo encontraste haces una comparacion y si es true ejecutas la funcion, que en este caso solo le cambia el color de fondo a Amarillo, si no va por el div en url se queda en verde.
Pruebalo y me cuentas como te fue
http://paste.behstant.com/index.php?show=70
Saludos !!!