PDA

Zobacz pełną wersję : błąd "this.root"



początkujący
16-12-2009, 10:43
ma problemik z błedem w joomla w przeglądarce internet explorer. Mianowicie uzytkownik po wejściu na stronę przez tą przeglądarkę dostaje komunikat:

wiersz: 92
znak: 72
błąd: "this.root" jest pusty lub nie jest obiektem
kod: 0
adres url:adres mojej strony


bład ten nie pojawia sie w przeglądarce Firefox i Opera.
dotyczy on templatki dj-0013 a dokładniej pliku cssmenus.js
oto ten fragment:
ALL.push(this,this.id);this.root=this.container.ge tElementsByTagName("ul")[0];this.first=this.root.getElementsByTagName("li")[0];if(!this.root){return;}

nie jestem dobry w javie proszę o szybką odpowiedź

Jola
16-12-2009, 12:28
Witam,
spróbuj tak:

ALL.push(this,this.id);
if(this.root){
this.root=this.container.ge tElementsByTagName("ul")[0];
this.first=this.root.getElementsByTagName("li")[0];
}
else {return;}

początkujący
16-12-2009, 13:41
spróbowałem ten bład znikł.:)
ale się pojawił się nowy :(o treści:
wiersz : 45 i 47 i 48 i 49 i 50 i 60
znak : 5
błąd : obiekt nie obsługuje tej właściwości lub metody.
kod : 0
adres url: adres mojej strony

jeśli klikne przeczytać jakis artykuł w tedy w adresie url błedu pojawia się

adres url: adres mojej strony/index.php/tytułartykułu

nie wiem czy to dotyczy tego pliku cssmenus.js

ale oto linijka nr 45:
var r={x:!isNaN(el.offsetLeft)?(el.offsetLeft-_4f):el.offsetParent?el.offsetParent.offsetLeft?el .offsetParent.offsetLeft:0:0,y:!isNaN(el.offsetTop )?(el.offsetTop-_50):el.offsetParent?el.offsetParent.offsetTop?el. offsetParent.offsetTop:0:0};if(el.offsetParent&&tn!="BODY"){var tmp=gLOW(el.offsetParent,true);r.x+=isNaN(tmp.x)?0 :tmp.x;r.y+=isNaN(tmp.y)?0:tmp.y;}

linijka 46:

return r;};var rm;getLayout=function(el){var box={"x":0,"y":0,"width":0,"height":0};rm=((typeof el.ownerDocument!="undefined")&&(typeof el.ownerDocument.compatMode!="undefined")&&(el.ownerDocument.compatMode=="CSS1Compat"));if((typeof el.ownerDocument!="undefined")&&(typeof el.ownerDocument.getBoxObjectFor!="undefined")){var _56=el.ownerDocument.getBoxObjectFor(el);box.x=_56 .x-el.parentNode.scrollLeft;box.y=_56.y-el.parentNode.scrollTop;box.width=_56.width;box.he ight=_56.height;box.scrollLeft=(rm?el.ownerDocumen t.documentElement:el.ownerDocument.body).scrollLef t;box.scrollTop=(rm?el.ownerDocument.documentEleme nt:el.ownerDocument.body).scrollTop;box.x-=box.scrollLeft;box.y-=box.scrollTop;}else{if(typeof el.getBoundingClientRect!="undefined"){var _56=el.getBoundingClientRect();box.x=_56.left;box. y=_56.top;box.width=_56.right-_56.left;box.height=_56.bottom-_56.top;}else{var tmp=gLOW(el);box.x=tmp.x-el.parentNode.scrollLeft;box.y=tmp.y-el.parentNode.scrollTop;box.width=gCP(el,"width");box.height=gCP(el,"height");}}


linijka 47:
return box;};aCN=function(obj,_59){var cls=getClasses(obj);if(typeof _59=="string"){_59=_59.split(",");}

linijka 48:

_Ae(_59,function(_5b,i){if(_Ai(cls,_5b)==-1){_Ap(cls,_5b);}});cls=_St(cls.join(" "));if(_St(obj.className)!=cls){obj.className=cls;} };_rC=function(obj,_5e){var cls=getClasses(obj);var _60=[];if(typeof _5e=="string"){_5e=_5e.split(",");}

linijka 49:

_Ae(cls,function(_61,i){if(_Ai(_5e,_61)==-1){_Ap(_60,_61);}});cls=_St(_60.join(" "));if(_St(obj.className)!=cls){obj.className=cls;} };function AA(){this.length=0;this.doubles=0;this.sRef={};thi s.nRef=[];this.runEach=true;}

linijka 50:

AA.prototype.push=function(el,key){var num=this.length++;var key=key||("unnamed_el_"+num);this.doubles=0;while(this.sRef[key]){key+="_"+this.doubles++;}

i linijka 60:

return null;};AA.prototype.gH=function(){var _82={};for(var i=0;i<this.nRef.length;i++){_82[this.nRef[i].key]=this.nRef[i].content;}



z góry dzięki za odpowiedź

zagalo
07-01-2010, 00:51
I jak udało się rozwiązać ten problem , mam coś podobnego.

początkujący
07-01-2010, 07:49
jak do tej pory nic nie wymyśliłem:(

nikszal
07-01-2010, 08:29
ma problemik z błedem w joomla w przeglądarce internet explorer. Mianowicie uzytkownik po wejściu na stronę przez tą przeglądarkę dostaje komunikat:

wiersz: 92
znak: 72
błąd: "this.root" jest pusty lub nie jest obiektem
kod: 0
adres url:adres mojej strony
Wyłacz raportowanie błędów w przeglądarce, zaktualizuj przeglądarkę. Google udostępnia za free IE 8. Zmień szablon. W sieci są ich dziesiątki tysięcy.