Konflikt funkcji i nazwy Javascript

Mam funkcję javascript, która nie działa i rzuciła błąd. Minęło około godziny, zanim uświadomiłem sobie, że moja forma ma taką samą nazwę jak funkcja. Wydawało się dziwne, że nazwa formularza byłaby w konflikcie z nazwą funkcji, ale i tak zmieniam nazwę i wszystko działało dobrze. Czy ktoś wie, dlaczego tak się stanie?

Jeśli uruchomisz ten kod, nie powiedzie się, ale jeśli zmienisz nazwę formularza, działa bardzo dziwnie.

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function mytest(){alert("hello");}
</script>
</head>
<body>
<form name="mytest" ></form>
<a  href="#" onClick="mytest();">Click Me</a>
</body>
</html>

Używam tego na IE6. Dziwne jest dla mnie to, że jeden to kod JavaScript, a drugi to atrybut HTML.

Link na żywo, gdzie można zobaczyć to wydarzenie:
JSBin

questionAnswers(2)

yourAnswerToTheQuestion