js: popup mit stylesheet

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/js_popup_mit_stylesheet_91417/page_1 - zur Vollversion wechseln!


sick schrieb am 04.09.2003 um 03:33

hiho,

nach einigem tüfteln und suchen geb ich auf.
mein problem:
ich öffne mit javascript ein popup fenster

Code:
function OpenWindow (URL, WinName, Features) { 
	popup = window.open(URL, WinName, Features).focus();
	popup.document.write('<link rel="stylesheet" href="style.css">');
	
aufgerufen mit dem üblichen ...

Code:
<a href="blabla.html" onclick="javascript:.....

das problem is, dass es ned funktioniert.
wie sprech ich das fenster richtig an?
obiges funktioniert genauso wenig wie document.write und window.document.write, oder popup.write...

bitte um einen kleinen denkanstoss,
i siag scho nix mehr :(
:confused:


watchout schrieb am 04.09.2003 um 05:13

window.popup.document.write() KÖNNTE gehen, das aber wahrscheinlich auch nicht mit jedem browser...

auf jeden fall hat die frage recht garnix mit stylesheets zu tun :p


Rektal schrieb am 04.09.2003 um 07:19

@sick:

der Fehler liegt wahrscheinlich das du im onclick Handler javascript: reinschreibst.

"javascript:" ist ein pseudo-Protokoll fuer z.B. das href-Attribut vom a-Element. Aber das onclick-Attribut ist bereits ein Teil der DOM fuer Javascript, d.h. im onclick-Attribut steht gleich der Javascript-Code der ausgefuehrt werden soll, kein weiteres pseudo-Protokoll.

Veranschaulichung:

Code:
<a href="javascript:alert('you clicked me');">
im Vergleich zu
Code:
<a href="" onclick="alert('you clicked me');">

Wie du links richtig mit Javascript ausstattest kannst du unter http://tom.me.uk/scripting/popups.asp nachlesen.


sick schrieb am 04.09.2003 um 10:37

Zitat von watchout
window.popup.document.write() KÖNNTE gehen, das aber wahrscheinlich auch nicht mit jedem browser...

auf jeden fall hat die frage recht garnix mit stylesheets zu tun :p
funkt leider auch ned. da zeigt er im fenster gar nix an, und es schaut so aus, als ob er sich aufghängt hat (moz & ie).

hab eh ned behauptet, dass es was mit stylesheets zu tun hat, i will nur eines dem popup fenster übergeben ;)

@Rektal:
beides schon probiert.
vorher hab i's eh lang beim im href dabeigehabt, dann aber nach dem Lesen einiger Threads hier zum onclick handler verschoben.
leider erfolglos. :confused:


atrox schrieb am 04.09.2003 um 10:45

was noch falsch ist:
popup = window.open(URL, WinName, Features).focus();

in popup landet der rückgabewert von focus(); das ist nicht, was du vermutlich dort drin haben willst.
versuch es mit:
popup = window.open(URL, WinName, Features);
popup.focus();

wenn du es sauber haben willst, wirst du auch vor dem write ein popup.document.open(..) aufrufen, und hinterher ein popup.document.close();


leon schrieb am 04.09.2003 um 10:46

warum schreibst du nicht die zuweisung für den stylesheet in die blabla.html datei?

dann hast nicht das problem mit dem übergeben


sick schrieb am 04.09.2003 um 11:00

Zitat von atrox
in popup landet der rückgabewert von focus(); das ist nicht, was du vermutlich dort drin haben willst.
versuch es mit:
popup = window.open(URL, WinName, Features);
popup.focus();

auch schon -erfolglos- probiert. :(

@leon:
es is ja eigentlich keine blabla.html sondern eine generierte php datei, die dann nur ein bild anzeigt.

das witzige daran is ja, dass es im quelltext vom fenster eh schon richtig drinsteht, nur werden die styles nicht angewendet...


Rektal schrieb am 04.09.2003 um 11:22

Und stylesheet ist auch der richtigen stelle realtiv zu der aufgerufenen URL?


atrox schrieb am 04.09.2003 um 11:29

ahso.. warte mal... wenn du ein dokument lädst, dann aber mit write() ausserhalb des parsers hineinschreibst, wird dann nicht das bisherige dokument verworfen ?
lass dir mal zusätzlich ein "hello world" ausgeben!?


sick schrieb am 04.09.2003 um 11:44

dankeschön mal an alle.

i werds jetz umschreiben, dass es in da php klasse dazugebastelt wird,
is zwar ned de schönste lösung, wenn ma verschiedene stylesheets dann verwenden will, aber was solls...:rolleyes:


watchout schrieb am 04.09.2003 um 13:18

Zitat von sick
dankeschön mal an alle.

i werds jetz umschreiben, dass es in da php klasse dazugebastelt wird,
is zwar ned de schönste lösung, wenn ma verschiedene stylesheets dann verwenden will, aber was solls...:rolleyes:
in so einem fall sollte auch der stylesheet per url oder SESSIONS übergeben werden :rolleyes: javascript ist der vollkommen falsche ansatz für sowas


sick schrieb am 04.09.2003 um 17:54

Zitat von watchout
javascript ist der vollkommen falsche ansatz für sowas

najo, im prinzip gehts ja ums popup, ned ums stylesheet.
ausserdem:

learning by doing. ;)
ma kann jo ned alles können ... :D


watchout schrieb am 04.09.2003 um 22:21

Zitat von sick
najo, im prinzip gehts ja ums popup, ned ums stylesheet.
ausserdem:

learning by doing. ;)
ma kann jo ned alles können ... :D
deswegen sag ichs dir ja ;)




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025