Don P: Korrektur

Beitrag lesen

Hallo,

Vielen Dank für die Hilfe, also in dem Onklick einbauen, in etwa so funktioniert es leider nicht.

<input type="button" onclick="this.iframeURL = document.getElementById("MSelect").src;

if (this.target) { this.target.src = iframeURL; }
else             { this.target = window.open(iframeURL); }" value="Vollbild" />

  
Hast du die Fehlerkonsole inzwischen gefunden? Dort wird sicher ein Syntaxfehler in der erste Zeile angemeckert, weil du falsche Anführungzeichen in deinem String benutzt. Wenn man innerhalb einer Zeichenkette Anführungzeichen benutzt, "müssen diese wie folgt  \"[maskiert](http://)\" werden, oder man benutzt wie folgt 'andere' als außen".  
  
So wäre es schon besser:  
~~~javascript
  
<input type="button"  
       value="Vollbild"  
       onclick = "this.iframeURL = document.getElementById('MSelect').src;  
                  if (this.target) { this.target.src = iframeURL; }  
                  else             { this.target = window.open(iframeURL,'Name');}"  
/>  

Abgesehen von den Anführungszeichen wird der Code aber so auch nicht funktionieren, denn die Zeile
if (this.target) { this.target.src = iframeURL; }
ist fehlerhaft: this.target speichert eine Referenz auf ein [ref:self812;javascript/objekte/window.htm@title=window-objekt], und window hat keine Eigenschaft src. Statt dessen muss man den neuen URL über [ref:self812;javascript/objekte/location.htm@title=window.location...] setzen.

Abgesehen davon sollte man solche Eventhandler besser in eigene Funktionen auslagern, siehe <http://de.selfhtml.org/html/attribute/eventhandler.htm#notieren@title=Event-Handler notieren>.

Gruß, Don P