Asa cum ii sta frumos unui site web, din cand in cand mai trebuie sa aduca elemente noi pentru vizitatori. Ca de ex. un filmulet preluat de pe YouTube. Ce te faci insa cand te pomenesti cu mesajul “The page at the address: http://www.etc could not be loaded / Operation aborted.” In Internet Explorer, cel care pana in versiunea 6 accepta orice cod Javascript sau VBscript, oricat de prost era scris (no comment on that one). Acum, dintre toate browserele lumii, s-a hotarat sa dea aceasta eroare, si mai mult decat atat, in momentul in care se face click pe butonul “Ok”, singurul de fapt pe care se poate face click, se duce tot site-ul in fras, cu o binecunoscuta pagina de “DNS error”, check Internet connection si alte mesaje de acest gen.
Ca sa nu dramatizam, aceste mesaje nu au nimic in comun cu eroarea propriu-zisa. E mai mult un exces de zel din partea IE.
Ce rezolvari ne da internetul? Cele mai “tari”: utilizati Firefox (yea right), reinstalati IE (what???). Cautand solutii viabile nu fantezii, am dat peste diverse solutii la problema.
Eroarea provine din faptul ca un cod JS incearca sa adauge un element in cadrul paginii web, mai bine spus, sa adauge un copil la containerul parinte “document.body”. Acest lucru nu este posibil daca scriptul respectiv nu ruleaza intr-un element care sa fie el insasi un copil direct al lui document.body. Adica daca scriptul vrea sa adauge un element de acest gen din interiorul unui <table> nu va putea fara sa genereze eroarea respectiva.
Explicatiile erau mai multe insa ceea ce ne interesa pe noi nu se regasea printre ele. Pe noi ne interesa faptul ca odata cu adaugarea unui film YouTube in codul deja existent, ceva se intampla si pagina nu mai functiona corect. Cateva script-uri 3rd party isi dadeau cu dreptul in stangul si rezulta eroarea propriu-zisa. Printre ele si scriptul Trafic.ro, care daca era scos din pagina, eroarea nu mai aparea. Solutia cu dezactivarea scriptului Trafic.ro nu era posibila, astfel incat am ajuns la urmatoarea rezolvare: din codul dat de YouTube pentru embedarea filmuletului, se elimina tag-urile <object> si <parameters>, ramane doar <embed>. That’s all.