Größenbeschränkung von PopUps im IE8
fumanchu17
- javascript
0 Thomas Luethi0 fumanchu170 ChrisB0 fumanchu170 fumanchu17
2 Vinzenz Mai0 js10 ChrisB
Hallo. Win XP, SP3, IE8
Problem: Größenbeschränkung von PopUp Fenstern.
Ich habe mir für bestimmte Bedürfnisse eigene Pop-Fenster programmiert, in die jeweils bestimmte Inhalte über eine html-Datei local geladen werden. Eine dieser PopUp-Leisten hat eine Breite von 160 Pixeln. Der IE8 ignoriert das aber und macht diese Leiste immer breiter, schätzungsweise 250 Pixel. Ich habe alles im IE8 durchwühlt, bei google, hier....Ich finde nichts, wie ich mein PopUp Fenster schmaler bekomme. Im viel gescholtenen IE6, der sich an keine Norm hielt, funktionierte das wunderbar, DER machte was ICH wollte. Mich nervt das, wenn mir aus imaginären Sicherheitsvorstellungen Entscheidungsrechte abgenommen werden.
Kann mir jemand sagen, wie ich das PopUp Fenster so groß bekomme, wie ICH das will? Eine Mindestbreite von 250 Pixeln kommt mir auch etwas seltsam vor.
Screenshot des PopUps (Der gelbe Rand rechts ist der Fehler, der soll wieder weg, das Fenster soll bündig mit dem Media Player abschließen):
Mein Script bisher:
<html>
<head>
<title>Pop this up!</title>
</head>
<body onLoad="javascript:window.open('News-TV-PopUp2.htm','popup2' ,'width=160,height=960,status,top= + xps +, left= + yps + ')">
</body>
</html>
Hallo,
Mangels MS IE 8.0 kann ich Dein Problem nicht nachvollziehen, sorry.
Was mir aber auffällt:
<body onLoad="javascript:window.open('News-TV-PopUp2.htm','popup2' ,'width=160,height=960,status,top= + xps +, left= + yps + ')">
Da am Schluss stehen diese Variablen (?) xps und yps einfach so drin.
Ich denke, Du solltest entweder gleich die Position hart codieren,
d.h. statt den Variablen die Zahlen reinschreiben, z.B.
<body onLoad="javascript:window.open('News-TV-PopUp2.htm','popup2' ,'width=160,height=960,status,top=0,left=800')">
Oder aber die Anführungszeichen so einsetzen, dass die Variablen
ausserhalb des Strings stehen:
<body onLoad="javascript:window.open('News-TV-PopUp2.htm','popup2' ,'width=160,height=960,status,top='+xps+',left='+yps)">
d.h. der komplette String für den dritten Parameter ist dann:
'width=160,height=960,status,top=' + xps + ',left=' + yps
Ich hoffe, ich habe mich nicht vertippt! ;-)
Aufgrund Deines Code-Schnipsels ist nicht klar, wo diese
Variablen herkommen. Du musst sie natürlich definieren,
bevor die window.open()-Funktion aufgerufen wird.
mfg Thomas
Hallo Thomas, Danke für deine Antwort. Ich habe es so gemacht wie du gesagt hast. Eigentlich reicht das "+" aus, auch wenn es nicht ganz korrekt ist, da hast du Recht. Aber an dem Größenproblem des PopUp-Fensters ändert das natürlich nichts.
Was möchtest du denn gern noch wissen? Die html-Datei in der die Daten und Werte zu dem stehen, was in das PopUp Fenster geladen werden soll? Kann ich gern posten aber das ändert am Problem nichts weil das sowieso ans Fenster angepasst wird.
Soweit ich weiß gelten für alle neuen Browserversionen generell Mindestgrößen von PopUps von glaube ich 100x100 Pixeln. In der Höhe - ich habs eben probiert im IE 8 - stimmt das auch. Die Mindestbreite aller PopUps die sich bei mir öffnen beträgt aber 250 Pixel. Kann das wirklich so sein im IE8? Bisschen arg viel denke ich. Öffne ich das PopUp aber über Firefox, wird es anstandslos richtig geöffnet. Wenn also der Fehler nicht im JavaScript - was ich noch nicht weiß - muss diese Größenbeschränkung oder Vorgabe doch irgendwo im IE8 stehen und aufgehoben werden können? Hoffentlich nur in der Registry....
Der IE8 hat mich trotzdem positiv überrascht in vielen Dingen, ich nutze ihn sogar auf anhieb wieder lieber als den Firefox. Allerdings das beschriebene Problem bleibt.
Hi,
Eigentlich reicht das "+" aus, auch wenn es nicht ganz korrekt ist, da hast du Recht.
Es ist nicht "nicht ganz korrekt", sondern ganz falsch.
Aber an dem Größenproblem des PopUp-Fensters ändert das natürlich nichts.
Wie sieht dein aktueller Code aus?
MfG ChrisB
So:
<html>
<head>
<title>Pop this up!</title>
</head>
<body onLoad="javascript:window.open('News-TV-PopUp2.htm','popup2' ,'width=250,height=100,status,top=0,left=0')">
</body>
</html>
Die html.datei die geöffnet werden soll sieht so aus:
<head>
<style type="text/css">
body { margin-left:0px; margin-right:0px; margin-top:0px; margin-bottom:0px }
</style>
</head>
<OBJECT ID="MediaPlayer" WIDTH="160" HEIGHT="160" classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112"
standby="Loading Microsoft Windows Media Player components..."
type="application/x-oleobject">
<PARAM NAME="FileName" VALUE="URL">
<PARAM NAME="Mute" VALUE="1">
<Embed type="application/x-mplayer2"
pluginspage="http://www.microsoft.com/downloads/details.aspx?FamilyID=9194bb10-00ea-4500-859d-9a319738d4d8&DisplayLang=en/"
filename="Station1.asx"
src="Station1.asx"
Name=MediaPlayer
ShowControls=0
ShowDisplay=0
ShowStatusBar=0
width=160
height=160
</embed>
</OBJECT>
<OBJECT ID="MediaPlayer" WIDTH="160" HEIGHT="160" classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112"
standby="Loading Microsoft Windows Media Player components..."
type="application/x-oleobject">
<PARAM NAME="FileName" VALUE="URL">
<PARAM NAME="Mute" VALUE="1">
<Embed type="application/x-mplayer2"
pluginspage="http://www.microsoft.com/downloads/details.aspx?FamilyID=9194bb10-00ea-4500-859d-9a319738d4d8&DisplayLang=en/"
filename="Station1.asx"
src="Station1.asx"
Name=MediaPlayer
ShowControls=1
ShowDisplay=1
ShowStatusBar=1
width=160
height=160
</embed>
</OBJECT>
<OBJECT ID="MediaPlayer" WIDTH="160" HEIGHT="160" classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112"
standby="Loading Microsoft Windows Media Player components..."
type="application/x-oleobject">
<PARAM NAME="FileName" VALUE="URL">
<PARAM NAME="Mute" VALUE="1">
<Embed type="application/x-mplayer2"
pluginspage="http://www.microsoft.com/downloads/details.aspx?FamilyID=9194bb10-00ea-4500-859d-9a319738d4d8&DisplayLang=en/"
filename="Station1.asx"
src="Station1.asx"
Name=MediaPlayer
ShowControls=1
ShowDisplay=1
ShowStatusBar=1
width=160
height=160
</embed>
</OBJECT>
Hinweis: Im Java script steht natürlich width=160,height=160 und nicht wie oben width=250,height=100. Sorry. Das habe ich jetzt vergessen zu ändern weil ich vorhin nochmal probiert habe was die kleinste Größe ist, die der IE8 darstellt.
Ich bin nun nicht DER Experte auf dem Gebiet, aber trotzdem nochmal:
1. Firefox öffnet die korrekte Größe
2. Wer hat denn den IE8 und kann bestätigen oder nicht bestätigen, das 250x100 Pixel die kleinste Größe ist, die der IE8 für PopUps akzeptiert? Oder wer könnte das mal probieren?
Dann wüsste ich schonmal ob es systembedingt bei mir ist oder nicht.
Und nun? Hat keiner eine Idee, oder Lösung? =(
Hallo,
Und nun? Hat keiner eine Idee, oder Lösung? =(
ja klar. Ich habe eine Antwort und zwei Ideen!
Freundliche Grüße
Vinzenz
Hallo Vinenz, danke für deine Antwort. Ich hab sie jetzt erst gelesen weil ich nicht vermutet habe, das noch eine Antwort kommt. Endlich mal jemand der exakt weiß worum es geht und das Problem kennt. Egal wo ich schreibe, alle zucken mit den Schultern, so als ob meine Frage so exotisch wäre.
Zum Thema: Hab mir alles durchgelesen, dein Tipp probiert - Window.resize funzt nicht, außerdem wirds dann als komplettes Explorer-Fenster geöffnet samt Symbolleiste anstatt als nacktes PopUp.
Zwei Überlegungen:
1. WO ist das im IE festgelegt mit der Mindestgröße? In den Tiefen der IE eigenen Programmierung, oder wird dafür nur ein simpler Registry-Wert gesetzt den man ändern könnte? Clever wie ich bin hab ich mal im Registry-Editor " 100x250 " eingegeben weil ich dachte, vielleicht werd ich da zur Explorer Einstellung gelotst - aber wie vermutet kommen da hunderte Einträge.
2. Wenn ich über den IE mit meinem schönen PopUp nicht weiterkomme, wie ist es dann mit dem Firefox? Der öffnet mit das PopUp nämlich korrekt. Allerdings tun sich 2 andere Probleme auf: Das PopUp ist leer, also die zu ladenden Medieninhalte sind nicht da, und es wird oben die URL eingeblendet, die nicht da stehen soll. Hast du eine Idee wie ich diese 2 Probs gelöst bekomme? Das dürfte einfacher sein als die PU-Größe im IE zu ändern.
Die Scripte hatte ich im 2. Posting glaub ich. Wieso läd die Firefox nicht ins Fenster rein?
PopUp Blocker ist aus, AdBlockPlus oder ähnliches Geschmeiß ist auch nicht installiert, Firewall enstprechend auf Durchlaaß geschaltet. Auf "normale" Websites connected der Firefox ganz normal.
Hallo,
Kann mir jemand sagen, wie ich das PopUp Fenster so groß bekomme, wie ICH das will? Eine Mindestbreite von 250 Pixeln kommt mir auch etwas seltsam vor.
im IE 7 und neuer? Gar nicht. Die Mindestbreite ist seit IE 7 250 Pixel, vorher waren es 100 Pixel, wie Du in Microsofts Doku zu window.open nachlesen kannst.
Du könntest
a) testen ob Du mit http://de.selfhtml.org/javascript/objekte/window.htm#resize_to@title=window.resizeTo() das Popupfenster auf die von Dir gewünschte Breite verkleinern kannst.
b) auf Popups verzichten
Freundliche Grüße
Vinzenz
Hallo. Win XP, SP3, IE8
Problem: Größenbeschränkung von PopUp Fenstern.
Also ich mach sowas auch und es funktioniert problemlos, z.B.:
onclick="javascript:window.open('menue/impressium.htm','PopupFenster_05','width=350,height=320')">
Bis auf die Tatsache daß die Browser eine Sicherheitswarnung ausgeben wenn jemand meine Seite zum ersten Mal aufruft, bzw. die Ausführung des/der Scrips nicht zuläßt.
Dazu suche ich auch grade eine Lösung.
Hi,
Problem: Größenbeschränkung von PopUp Fenstern.
Also ich mach sowas auch und es funktioniert problemlos, z.B.:
onclick="javascript:window.open('menue/impressium.htm','PopupFenster_05','width=350,height=320')">
Du hast aber schon gesehen, dass es in der Problembeschreibung hier um Fenstermaße ging, die deutlich unter den in deinem Beispiel verwendeten liegen?
Bis auf die Tatsache daß die Browser eine Sicherheitswarnung ausgeben wenn jemand meine Seite zum ersten Mal aufruft, bzw. die Ausführung des/der Scrips nicht zuläßt.
Dazu suche ich auch grade eine Lösung.
Wissen wir - musst du jetzt aber nicht auch noch über andere Threads verstreuen, der eine bestehende reicht aus.
MfG ChrisB