XaraX: Portabilität im DOM-Bereich

Beitrag lesen

Hallo Christoph,

als Erfahrungsbericht kann ich Dir das Arbeiten mit dem <iframe>-Element anraten. Zum einen wird dieses Element von sehr vielen Browsern schon sehr lange interpretiert, zum anderen ist die Implementierung von javascriptgestützen Zugriffen auf Dokumente paralleler Instanzen und auf deren Eigenschaften selbst erheblich verbreiteter. Sie bietet dabei (bei validen Dokumenten) mit etwas mehr Aufwand gleiche Kompfotablität wie das XMLHttpRequest Objekt, und ist erhelblich abwärts kompatibler.

Ein Beispiel, was vor Version 7.5(?) des "heißgeliebten" Operas nicht funktioniert:

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">  
<html>  
<head>  
<title>Test JS - Grundfunktion</title>  
  
<script type="text/javascript">  

~~~~~~javascript
  
var script;  
  
function daten_lader()  
 {  
 script = document.createElement("script");  
  
 script.src  = "grund.js";  
 script.type = "text/javascript";  
  
 document.getElementsByTagName("head")[0].appendChild(script);  
 }  

~~~~~~html
  
</script>  
  
</head>  
<body>  
 <div>  
  <a href="#" onClick="daten_lader()">Funktioniert es?</a>  
 </div>  
</body>  
</html>  

grund.js:

  
alert("Es funktioniert!");  

##################################

Opera würde aber ohne Probleme ein targetName.location.replace() und targetName.document.getElementByTagName() interpretieren.

Gruß aus Berlin!
eddi