3 часа времени убил недавно на непонятное поведение браузеров. Было у меня примерно следующее:
<div id="aa">
<a href="javascript: ;">Ссылочка</a>
<a href="javascript: ;">и еще ссылочка</a>
<a href="javascript: ;">и еще</a>
</div>
через jQuery дергаю массив ссылок:
var links = $('#aa a');
и когда пробегаюсь по ним циклом - то при алерте элемента (другими словами, alert(a), где a - anchor) - получаю текст "javascript: ;".
2,5 часа я думал что дело в том как я выбираю данные в массив - мне казалось что цикл пробегает по полям <a /> и выводит собственно их, пробовал даже через $('#aa').getElementsByTagName('a'), но потом оказалось, что браузеры почему-то ведут себя неадекватно, если делается alert по <a />.
К примеру:
<a id="diablog" href="http://www.diablog.ru">Диаблогъ</a>
<span id="oneone">АДЫНАДЫН</span>
<script type="text/javascript">
alert(document.getElementById('diablog'));
alert(document.getElementById('oneone'));
</script>
Про спан все честно скажут, что это Object HTMLElement (Opera), Object HTMLSpanElement (FF) и просто object в IE6, а вот зато про анчор - тупо выведется то, что в параметре href.
this is kind of magic o-o-ou