[ mist @ 17.10.2006. 22:25 ] @
Dakle po*izdeo sam nekoliko dana... Radio sam modifikaciju neke skripte koja koristi templatove u php-u , ubacio sam neku dodatnu skriptu koja koristi Ajax + Perl + PHP. I sve ja lepo odradio, integrisao u novu skriptu, sve radi kao bombona, i onda, na kraju (kakva greska), resim da testiram u IE6. I skripta obara IE6. Naravno, originalna skripta koju sam preuzeo ne obara IE6. Krenem ja u izolaciju JS koda, liniju po liniju i identifikujem da IE pada na liniji tbody.appendChild(tr); btw, ako niste znali, ne mozete u tabelu dodavati row childove direktno u objekat tabele, jer IE DOM model u svaku tabelu IMPLICITNO dodaje <tbody> element. Tako da ako vam ne radi append redova u tabelu, treba da pokupite tbody objekat, pa u njega dodajte.... no, da se vratim na pricu... I tako je proslo 3 dana bezuspesnih pokusaja i googlanja na sve strane u pokusaju da se spreci ovo krahiranje IE6. Sta sam na kraju ukapirao? U originalnoj skripti je HTML document header ovakav: Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> a u skripti u koju sam integrisao, templejt je postavljao header: Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> Kada sam promenio header sve je proradilo!!!!!!! Naravno, kao sto sam rekao, ovo posle 3 dana agonije. I ova skripta radi SAMO I JEDINO sa ovim prvim headerom Dakle, dame i gospodo, ako vam krahira IE6 na appendChild, proverite header dokumenta. |