Avatar billede xited Praktikant
12. august 2003 - 10:33 Der er 11 kommentarer og
1 løsning

Popup Onload resize

Hvordan laves en popup der får samme størrelse som et billede der loades i den ???.... der skal i øvrigt kunne lægges noget oveni ScroolHeight, så der kan stå noget under billedet...
Avatar billede mm12010 Nybegynder
12. august 2003 - 10:37 #1
Avatar billede jakobclausen Nybegynder
12. august 2003 - 10:37 #2
<-- Sættes ind mellem <head> og </head> -->

<Script Language="JavaScript">
// Script Source: CodeLifter.com
// Copyright 2003
// Do not remove this notice.

// SETUPS:
// ===============================

// Set the horizontal and vertical position for the popup

PositionX = 100;
PositionY = 100;

// Set these value approximately 20 pixels greater than the
// size of the largest image to be used (needed for Netscape)

defaultWidth  = 500;
defaultHeight = 500;

// Set autoclose true to have the window close automatically
// Set autoclose false to allow multiple popup windows

var AutoClose = true;

// Do not edit below this line...
// ================================
if (parseInt(navigator.appVersion.charAt(0))>=4){
var isNN=(navigator.appName=="Netscape")?1:0;
var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}
var optNN='scrollbars=no,width='+defaultWidth+',height='+defaultHeight+',left='+PositionX+',top='+PositionY;
var optIE='scrollbars=no,width=150,height=100,left='+PositionX+',top='+PositionY;
function popImage(imageURL,imageTitle){
if (isNN){imgWin=window.open('about:blank','',optNN);}
if (isIE){imgWin=window.open('about:blank','',optIE);}
with (imgWin.document){
writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</style>');writeln('<sc'+'ript>');
writeln('var isNN,isIE;');writeln('if (parseInt(navigator.appVersion.charAt(0))>=4){');
writeln('isNN=(navigator.appName=="Netscape")?1:0;');writeln('isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}');
writeln('function reSizeToImage(){');writeln('if (isIE){');writeln('window.resizeTo(100,100);');
writeln('width=100-(document.body.clientWidth-document.images[0].width);');
writeln('height=100-(document.body.clientHeight-document.images[0].height);');
writeln('window.resizeTo(width,height);}');writeln('if (isNN){');     
writeln('window.innerWidth=document.images["George"].width;');writeln('window.innerHeight=document.images["George"].height;}}');
writeln('function doTitle(){document.title="'+imageTitle+'";}');writeln('</sc'+'ript>');
if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()">')
else writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
writeln('<img name="George" src='+imageURL+' style="display:block"></body></html>');
close();       
}}
</script>

<-- Sættes ind mellem <body> og </body> -->


<a href="java script:popImage('stortbillede.gif','Some Title')">
<img src="lillebillede.gif" border="0" alt="Se stort billlede">
</a>

Se eksempel: www.bokaj.dk/eksperten/gribben/
http://www.codelifter.com/main/javascript/autosizeimagepopup.html
Avatar billede jakobclausen Nybegynder
12. august 2003 - 10:41 #3
Med en lille rettelse kan man få et tekst område i bunden, hvis det ønskes:
http://www.bokaj.dk/eksperten/gribben/385170.htm
Avatar billede xited Praktikant
12. august 2003 - 14:34 #4
Prøv at se denne side:

http://www.dumazz.dk/

og vælg så "Billeder" - "Dooh" - "M&M's"

hvorfor virker denne ikke når alle de andre gør...
Avatar billede xited Praktikant
12. august 2003 - 14:39 #5
Desuden "Han skulle vist aldrig..." under "Ugly People"
Avatar billede jakobclausen Nybegynder
12. august 2003 - 14:41 #6
Hmm kan ikke lige helt se hvorfor
Avatar billede roenving Novice
12. august 2003 - 14:48 #7
Fordi det giver fejl, når du har "" (Fejl: strengkonstant uafsluttet) eller ' i navnet (Fejl: Tegnet ')' var ventet)

Og, det er jo ikke svært at forstå, at følgende giver fejl, når der inde i tekst-strengen forekommer "" ...

"java script:popImage('billeder/1059148698.jpg','Dumazz.dk Galleri - Dooh - Ikke "Always Coca Cola" Men "Always Counter Strike"','Ikke "Always Coca Cola" Men "Always Counter Strike"')"

-- du må i din scripting sørge for, at "" erstattes af \42 og ' af \47 ...
Avatar billede roenving Novice
12. august 2003 - 14:54 #8
Altså skal den nævnte se således ud:

"java script:popImage('billeder/1059148698.jpg','Dumazz.dk Galleri - Dooh - Ikke \42Always Coca Cola\42 Men \42Always Counter Strike\42','Ikke \42Always Coca Cola\42 Men \42Always Counter Strike\42')"

Mens titel m.v. i M&M's
skal være: M&M\47s

hth
jes
Avatar billede xited Praktikant
13. august 2003 - 09:25 #9
Jeg har sat dette ind:

$tekst = str_replace("'","\47",$tekst);
$tekst = str_replace("\"","\42",$tekst);

Men tjek selv på www.dumazz.dk <-- det virker stadig ikke...
Avatar billede roenving Novice
13. august 2003 - 12:34 #10
Den har jo heller ikke udskiftet:

Et snip fra koden:
('billeder/1058353545.jpg','Dumazz.dk Galleri - Dooh - M&M's','M&M's')"

Sådan en som:
'Dumazz.dk Galleri - Dooh - M&M's'
vil selvfølgelig lave fejl, for fortolkeren er nødt til at forholde sig til de tegn, den ser ...
Avatar billede xited Praktikant
29. august 2003 - 14:46 #11
Jamen hvordan laves det så ???
Avatar billede roenving Novice
03. september 2003 - 16:03 #12
Du skal sørge for at den genererede kode ser sådan ud:

('billeder/1058353545.jpg','Dumazz.dk Galleri - Dooh - M&M\47s','M&M\47s')"
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester