• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

window.open funktioniert nicht richtig

Status
Für weitere Antworten geschlossen.

Loriot

Neues Mitglied
Hi,
ich möchte per Hyperlink ein pdf in einem neuen Fenster öffnen, leider funktioniert das nicht. Ich habe hier schon gesucht, komme aber nicht weiter.
Ich habe nach es nach dem Bsp. von SelfHTML erstellt:
SELFHTML: JavaScript / Objektreferenz / window

Mein Code:
HTML:
function FensterA (Adresse) {
  MeinFenster = window.open(Adresse, "Zweitfenster", "width=400,height=500,left=100,top=200,resizable=yes");
  MeinFenster.focus();
}
<p>
<a href="file:A.pdf" onclick="FensterA(this.href); return false;"> <img src="A.jpg" width="50" height="37" alt="Button" border="0"></a>
<br>
</p>
Was ist falsch? Das pdf wird einem neuen Fenster geöffnet und dann aber auch im Fenster mit dem Link geladen und das "neu" Fenster verschwindet dahinter? Das sollte ja das return false verhindern.
Gibt es noch eine andere Möglichkeit das zu realisieren, habe gelesen das window.open von neuen Browser oft geblockt wird bzw deaktiviert ist?
 
mach mal aus
Code:
onclick="FensterA(this.href); return false;">
dass hier
Code:
onclick="return FensterA(this.href);">

Und schreib in die Funktion am Ende ein return false
 
Meinst du so:
HTML:
function FensterA (Adresse) {
  MeinFenster = window.open(Adresse, "Zweitfenster", "width=400,height=500,left=100,top=200,resizable=yes,return false");
  MeinFenster.focus();
}


<a href="file:A.pdf" onclick="return FensterA(this.href)"> <img src="A.jpg" width="20" height="20" alt="Button" border="0"></a>
dadurch passiert genau das selbe wie vorher.
 
Zuletzt bearbeitet:
Code:
function FensterA (Adresse) {
  MeinFenster = window.open(Adresse, "Zweitfenster", "width=400,height=500,left=100,top=200,resizable=yes,return false")
  MeinFenster.focus()
  return false
}


<a href="file:A.pdf" onclick="return FensterA(this.href)"> <img src="A.jpg" width="20" height="20" alt="Button" border="0"></a>
 
ich möchte per Hyperlink ein pdf in einem neuen Fenster öffnen, leider funktioniert das nicht.
Gibt es noch eine andere Möglichkeit das zu realisieren, habe gelesen das window.open von neuen Browser oft geblockt wird bzw deaktiviert ist?
Genau. Was Du machst, ist ja kein "neues Fenster", sondern ein "Popup". Außer dem Blocker-Problem kann es auch sein, dass JavaScript deaktiviert ist, wobei dagegen hast Du ja was unternommen, auch wenn "file:A.pdf" keine URL ist.

Es gibt noch die Möglichkeit, wenn Du nicht gerade XHTML 1.0 Strict verwendest, in dem es keine Frames und das target-Attribut nicht mehr gibt, eben dieses Attribut zu verwenden.
Code:
<a href="A.pdf" target="_blank">
öffnet A.pdf in einem neuen Fenster.

Aber:
Bei mir (und bestimmt noch einigen anderen) geht das trotzdem nicht, weil man in seinem Browser einstellen kann, dass keine neuen Fenster geöffnet werden. Bei mir würde das PDF in einem neuen Tab geöffnet. Was mich wiederum auch ärgern würde, weil Du mir damit die Möglichkeit nimmst, es im selben Fenster+Tab zu öffnen.

Daher würde ich den Weg empfehlen, den XHTML geht: Öffne es immer im selben Fenster+Tab, jeder Browser bietet dem Anwender die Möglichkeit, einen Link in einem neuen Fenster oder neuen Tab zu öffnen. Lass den mündigen WWW-Nutzer selbst entscheiden. Das ist die bedienerfreundlichste Lösung.

Gruß,
-Efchen
 
Hi,
@Frank
funktioniert so wie du geschrieben hast !

@Efchen
wie gesagt - die Seite ist für einen eingeschränkten Personenkreis - deshalb werde ich es vorerst so lassen.

Ich habe aber noch ein Problem:
ich habe auf meiner Seite 2 Links zu Excel-Dateien.
Die eine soll über nen Hyperlink auf der aktiven Seite in einem Frame geöffnet werden, ohne extra Excel zu öffnen.
Die andere soll über nen Hyperlink in einem neuen Fenster (Popup) direkt in Excel geöffnet werden.
Ist das möglich, wenn ja wie?
 
Mit einem Hyperlink mit entsprechendem target-Attribut und ggfs. dem notwendigen Excel-Plugin. Ach ja und mit dem richtigen Betriebssystem :-)
 
Wie der Link aussieht, steht weiter oben.
Um Excel im Browser darzustellen, benötigts u.U. ein Plugin, im IE könnt ich mir vorstellen, ist das womöglich schon enthalten. Und Windows ist Voraussetzung für Excel.
 
Das mit dem Öffnen im neun Fenster klappt ja, auch die Exceldatei die im Browser geöffnet wird funktioniert. Aber wie bekomme ich es hin das die andere Datei per Hyperlink in Excel geöffnet wird?
 
also wenn du vorhast das Programm Excel zu starten und dann dort die Datei anzuzeigen, bezweifle ich sehr, dass du das schaffen wirst.

Vielleicht geht da irgendwas über ActiveX aber dann auch nur im Microsoft IE
 
Aber wie bekomme ich es hin das die andere Datei per Hyperlink in Excel geöffnet wird?
garnicht, das wäre noch schöner, dass man über einen code deine regedit starten und daten verändern könnte. wenn du den header richtig machst, wird dir excel als programm zum öffnen maximal angeboten. jeden anderen browser würde ich sofort in die ecke knicken und nie mehr angreifen.
 
Wenn Du ein entsprechendes Plugin in Deinem Browser hast, das Excel-Dateien direkt im Browser anzeigt, wirst Du es nicht durch Linksklick schaffen, dass sich eine andere Excel-Datei nicht im Plugin öffnet. Dann gibts evtl. eine Option im Context-Menu (rechte Maustaste).
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben