nam: getAttribute im IE spinnt

Beitrag lesen

Hi

Abgefangen bedeutet funktionierende Lösung, oder einfach nicht-Nutzung des Features im IE?
Wenn ein Workaround gewünscht wäre, und der auch etwas ekligerer Natur sein darf - dann könnte man ja schauen, ob das Attribut in outerHTML eines Knotens auftaucht, und es dort ggf. herausfischen (bspw. RegEx) - wenn das nicht zu sehr auf die Performance geht.

Weder noch und beide;-) Das Problem besteht ja nur, wenn im TABLE-Element KEIN xml:lang-Attribut steht - wenn eines da ist, lesen das alle Browser (auch IE) korrekt aus. Workaround ist also nicht nötig, danke aber trotzdem;-)

So hab ichs gemacht, und das funktioniert jetzt:

  
 function getLang(el) {  
  if(!el.hasAttribute) { //fuer IE  
   el.hasAttribute=function(a) {  
    try {  
     return (this.getAttribute(a)!='' && this.getAttribute(a)!=null)?true:false; //Dies war die kritische Stelle  
    } catch(e) {  
     return false;  
    }  
   };  
  }  
  if(el.hasAttribute('lang')) {  
   return el.getAttribute('lang').substring(0,2);  
  }  
  if(el.hasAttribute('xml:lang')) {  
   return el.getAttribute('xml:lang').substring(0,2);  
  }  
  return null;  
 };  

Gruss,
Mathias