Thumbnail-PopUp Skript legt Seite lahm

SligoLilo

Grünschnabel
Hallo,

das ist mein erster Beitrag hier, bin total nervös, hoffentlich mach ich nicht gleich alles falsch :)

Also dann mal los ...

Zuerst möchte ich vorausschicken, dass ich mit der Suchfunktion auch ein ähnliches Thema gefunden habe, aber mein Problem ist etwas anders gelagert und deswegen wollte ich das jetzt nochmal aufwerfen:

Ich habe auf der Website, die ich betreue, ein Thumbnail Popup Skript eingebaut. Das funktioniert auch alles soweit wie ich es mir vorgestellt hatte. Das einzige Problem ist, dass - sobald man auf den Link klickt, der das Popup auslöst - die ganze Seite lahmgelegt wird, d.h. Ladevorgang wird gestoppt, animated gifs stehen still, Musik hört auf etc. Das ist aber nicht so ganz in meinem Sinne. Mir wäre es lieb, wenn die Seite entweder "unter" bzw "hinter" dem Pop up normal weiterläuft oder wenigstens dann weiterläuft, wenn man das Pop up schließt.

An meiner etwas arg laienhaften Beschreibung merkt Ihr sicher schon deutlich, dass ich kein Profi auf dem Gebiet bin, sondern ein totaler Laie. Alles was ich "kann" hab ich mir selber gelernt und dementsprechend katastrophal sind bisweilen die Ergebnisse ("gefährliches Halbwissen" ist das Schlagwort dazu). Ich hoffe jedenfalls, dass Ihr mich nicht für einen totalen Deppen haltet und würde mich freuen, wenn mir irgendwer sagen könnte, wíe ich dieser Homepage bzgl. Pop Ups die Flötentöne beibringen kann. :)

Danke schon einmal im Voraus für Eure Hilfe.

Viele Grüße
Sligo Lilo
 
Na die erste Maßnahme in Richtung Erfolg wäre dann wohl, dass Du uns mal ein bißchen Einblick in deine Scripte gibst.

Dann kann man meist besser helfen.

vop
 
Da könntest Du natürlich Recht haben :) Hier also das Skript:

timeout =0;


function Start(URL, WIDTH, HEIGHT) {
windowprops = "left=50,top=50,width=" + (WIDTH+18) + ",height=" + (HEIGHT+25);

text = "<html>";


text += "<img src="+URL+" width="+WIDTH+" height="+HEIGHT+" border=0>";
text += "</html>";

preview = window.open("", "preview", windowprops);
preview.document.open();
preview.document.write(text);
preview.document.close();
}
 
Mein Vorschlag:
Code:
function imagePopup(obj) {
	var _img = new Image();
	    _img.src = obj.href;
	var popupWindow = window.open(obj.href, '_blank', 'top=50,left=50width='+_img.width+',height='+_img.height);
	    popupWindow.document.getElementsByTagName('html')[0].style.margin = '0';
	    popupWindow.document.getElementsByTagName('html')[0].style.padding = '0';
	    popupWindow.document.getElementsByTagName('body')[0].style.margin = '0';
	    popupWindow.document.getElementsByTagName('body')[0].style.padding = '0';
	return popupWindow;
}
Code:
<a href="<Grafik-URL>" onclick="return !imagePopup(this)"><Elementinhalt></a>
 
vop, ich weiß leider nicht so genau, was Du damit meinst ... auf jeden Fall muss man das Thumbnail dann noch so verlinken:
<a href="javascript:Start('GrafikURL',width,height)">Thumbnail</a>

Gumbo, danke für Deine Hilfe. Im Moment funktioniert das leider noch gar nicht, das liegt aber vermutlich daran, dass ich irgendwas falsch mache, also probier ich mit Deinem Vorschlag einfach noch ein bisschen weiter
 
Zuletzt bearbeitet:
Vielleicht schickst du mal die komplette Seite mit.
Dann können wir sehen, wo das Script untergebracht ist und wie genau deine Thumbnails Start aufrufen?

vop
 
Also, das würde jetzt praktisch so ausschauen:

<html>
<head><script language="JavaScript">
timeout =0;

function Start(URL, WIDTH, HEIGHT) {
windowprops = "left=50,top=50,width=" + (WIDTH+18) + ",height=" + (HEIGHT+25);

text = "<html>";


text += "<img src="+URL+" width="+WIDTH+" height="+HEIGHT+" border=0>";
text += "</html>";

preview = window.open("", "preview", windowprops);
preview.document.open();
preview.document.write(text);
preview.document.close();
}
</script>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</body>
<a href="javascript:Start('images/Testbild.jpg',400,300)"><img src="images/Testbildklein.jpg" width="120" height="90" border="0"></a></html>

Ich hab diese Seite auf den Testserver geladen und so wie es hier angegeben ist, würde es normalerweise auch funktionieren.

Ich muss dazu vielleicht noch erklären, dass ich jedes Bild zweimal habe - also einmal in Thumbnail-Größe (wäre im Beispielsfall "Testbildklein.jpg") und einmal in der normalen Größe fürs Popup ("Testbild.jpg"). Ich glaube, das könnte man wahrscheinlich auch eleganter lösen - aber nicht, wenn man keine Ahnung von dem ganzen Zeugs hat :)

Nochmal Danke, dass Ihr Euch soviel Mühe mit mir gebt.
 
Versuch doch mal im <a> - Tag statt href=

einen onClick-Aufruf

etwa so
<a href="#" onClick="Start('images/Testbild.jpg',400,300);">

Vielleicht gehts damit.

Oder füge nach dem javascript:Start.... am Ende ein Semikolon ein

<a href="javascript:Start('images/Testbild.jpg',400,300;)"><img src="images/Testbildklein.jpg" width="120" height="90" border="0"></a>

vop
 
Zurück