Така... значи... Марфа, от раз мога да ти посоча една основна разлика между двете страници, която принципно е хубаво нещо, но точно в случая пречи по доста причини: разлика в типа на документа.
Първата страница започва с DOCTYPE декларация, която я обявява като HTML 4.01 Transitional, което на практика казва на браузъра "Виж к'во, ползваш всички тагове и елементи, за които си чувал, и не обръщаш твърде много внимание на синтаксиса, тук-там може и да има някой допълнителен атрибут, тук-там може и да има някой забравен затварящ таг, ама ти си муай смело, виж там, покажи нещо на човека, не се заяждай много". Освен всичко друго, HTML 4.01 Transitional позволява *много* широк набор от имена на елементи и атрибути, така че е почти сигурно, че кажи-речи всичко, което хвърлиш към браузъра, ще бъде показано по някакъв начин.
Втората страница, тази, на която скриптът *не* работи, започва с DOCTYPE декларация за XHTML 1.1, която... която... която е стъпка в правилна посока - аз съм силно "за" преминаване на всякакви уебстраници и цели сайтове към XHTML по страшно много причини - само че
самият HTML на тази страница изобщо няма нищо общо с XHTML 
Да, започва с <html xmlns="правилен namespace">, но с това общо-взето се изчерпва приликата му с XHTML

Разликите - нещата, които не са наред - започват още с <meta http-equiv="Content-Type"...>, което хем дава грешен тип (не трябва да е text/html, не и за XHTML докименти), хем изобщо няма нужда от него, ако идеята е само да даде encoding (в един XML докимент, а всеки XHTML докимент е XML докимент, encoding се задава на първия ред, <?xml version="1.0" encoding="windows-1251"?>, а тук такъв ред хич няма)... И нататък продължава с 447 различни нарушения на стандарта XHTML

Не, не съм ги броил на ръка,
http://validator.w3.org/ го свърши вместо мен
Та така... начи... не искам нито ти, нито колегата ти да го приемате като някакъв вид лоша забележка или нещо такова, просто казвам - не знам откъде е дошла тази XHTML декларация, но тази страница просто НЕ Е никакъв XHTML - и при положение, че я обявявате за XHTML, пък после започвате да пляскате всякакви други неща, е на практика сигурно, че браузърите ще се побъркат и няма да покажат всичко така, както вие го искате.
Моят съвет е... ммм... уф. Да си имам и подсъзнанието

Да си имам и асоциациите... всеки път, когато започна изказване с "Моят съвет е...", мозъкът ми го заменя с "My advice to you is..." и продължава безсмъртната реплика
"My advice to you is to start drinking heavily". То това само по себе си не е лош съвет, ама специално за този случай имам и по-добър
Та така, съветът ми за момента (понеже точно в момента нямам възможност да поекпериментирам и да ти дам готово решение) е да смените DOCTYPE декларацията на втората страница със същата като на първата - HTML 4.01 Transitional, да смените <html xmlns="..." xml:lang="..."> с "обикновено" <html>, и да видиш тогава дали няма да е по-лесно да подкарате и JavaScript-а. Като намеря десетина минутки, може да погледна да видя дали не мога направо да го подкарам, ама това е най-лесният начин, това е посоката, в която ще е най-добре за момента да започнете да копате. Иначе *правилната* посока ще е захапване на
http://validator.w3.org/check?uri=http% ... ament.html и прехвърляне на страницата към истински XHTML, ама... това... няма да е толкова лесно

В един момент ще е добре да го направите, но е работа за доста часове. Пробвай просто със смяна на DOCTYPE на HTML 4.01 Transitional, би трябвало да улесни малко нещата.
Eric: I use my sword to detect good on it.
Ed: It's not good, Eric. It's a gazebo.