Avatar billede melted Nybegynder
28. september 2006 - 10:29 Der er 5 kommentarer

Mit popup-vindue resizer ikke når det lægges på serveren

Har et script, som åbner et nyt vindue og skalerer vinduet efter størrelsen af det billede der er i. Det virker altsammen fint nok når jeg tester det lokalt, men så snart jeg lægger det ud på serveren, så skalerer vinduet sig ikke efter billedets størrelse. Ved ikke om det måske kan være noget med nogle rettigheder eller lignende, som gør man ikke bare får lov at ændre vinduets størrelse med et script.

Nogen der har nogen forslag?

<script language="javascript" type="text/javascript">
<!--
function popWin(file){
    newWin=window.open("","Billede","width=1,height=1,status=no,scrollbars=yes,left=2000,top=2000");
    txt='<ht'+'ml><he'+'ad><ti'+'tle>Billede<\57ti'+'tle><scri';
    txt+='pt language="javascript" type="text/javascript">';
    txt+='function resPic(){h=document.images[0].scrollHeight;';
    txt+='w=document.images[0].scrollWidth;';
    txt+='if (h>screen.height) {h=screen.height;window.resizeTo(w+25,h-32);'; //If pic higher than screen
    txt+='    window.moveTo( (screen.width/2) - (w/2),(screen.height/2) - (h/2) );}';
    txt+='else {';
    txt+='    window.resizeTo(w+6,h+32);';
    txt+='    window.moveTo( (screen.width/2) - (w/2),(screen.height/2) - (h/2) );document.body.style.overflow="hidden";';
    txt+='}}<\57scri';
    txt+='pt><\57he'+'ad><bo'+'dy scroll="auto" bgcolor="#3b4b5b" style="';
    txt+='border:0px;margin:0px"><d'+'iv align="center"><i'+'mg src="'+file+'" style="top:0px;left:0px;border:0px;cursor:hand;"';
    txt+=' alt="Klik for at lukke vinduet" title="Klik for at lukke vinduet"';
    txt+=' onclick="window.close()" onload="resPic();"></57d'+'iv><\57bo'+'dy><\57ht'+'ml>';
    newWin.document.write(txt);
    newWin.document.close();
}
-->
</script>



Kaldes:

<a href="#" onClick="popWin('uploads_alb_large/101_l.jpg');return false;">
    <img src="uploads_alb_thumbs/101_m.jpg" width="120" alt="Klik for fuld størrelse" title="Klik for fuld størrelse">
</a>
Avatar billede roenving Novice
28. september 2006 - 10:38 #1
Der er i hvert fald en forward slash, hvor der skulle være en backslash i denne linje:

    txt+=' onclick="window.close()" onload="resPic();"><\57d'+'iv><\57bo'+'dy><\57ht'+'ml>';

-- og et par linjer før er den noget for kort:

    txt+='border:0px;margin:0px"><d'+'iv align="center"><i'+'mg src="'+file+'" style="top:0px;left:0px;border:0px;cursor:hand;cursor:pointer;"';

-- men det skulle da ikke betyde noget om det kom fra serveren eller lokal-maskinen ?-)

-- medmindre selvfølgelig at du henter koden, så browseren opfatter det som forskellige domæner (hvilket jeg ik' li'e kan forestille mig, med det, du refererer !-)
Avatar billede melted Nybegynder
28. september 2006 - 10:52 #2
Ok, har ændret det, men nu har jeg så prøvet at starte med at skrive width=1000,height=1000 istedet for 1x1 og så virker det faktiskt. Dog er det ikke så fedt at vinduet først skal laves kæmpe stort for så at skaleres ned, for man ser lige et hurtigt blink af det store vindue inden. Er da mystiskt...
Avatar billede roenving Novice
28. september 2006 - 11:00 #3
-- popups under 100 pixels størrelse accepteres ikke af de fleste browsere, derfor er mit oprindelige eksempel også baseret på 200*200 pixels, så prøv det !-)
Avatar billede melted Nybegynder
28. september 2006 - 11:07 #4
Virker nu egentlig mere som om det er fordi jeg havde smidt vinduet for langt ud af skærmen til at starte med (for ikke at se det blink der kommer) left=2000,top=2000.

Hvis man åbner vinduet i midten, er det ikke noget problem.
Avatar billede roenving Novice
28. september 2006 - 11:20 #5
Forsøg på at lave meget små popups og også placere dem udenfor vinduet opfattes på forsøg på at snyde brugeren, og vil derfor oftest blive blokeret af browseren, så det kan ikke anbefales, at du tager det udgangspunkt ...

-- start hellere med en popup, der kan ses, men som indehlder f.eks. en 'Loading...'-tekst indtil billedet er der, og kan resizes !-)
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