Avatar billede plesner Nybegynder
11. maj 2003 - 11:13 Der er 5 kommentarer

Åbne pop-up vindue som viser data fra en record

Jeg har en side der viser nogle specifikationer

<a href="#"><%=(rs_specs("Overskrift"))%></a>

ved at klikke på teksten, skal der åbnes en vindue uden scroolbar, stausbar og navigering, som viser yderligere info -> rs_specs("beskrivelse")

Vinduet skal gerne tilpasse sig, så vinduet ikke bliver større end at det indrammer teksten (f.eks. 200 pixel bred og højde tilpasser sig antallet af linier tekst)
Avatar billede roenving Novice
11. maj 2003 - 15:04 #1
Den sidste betingelse er svær at møde, for så skal vi måle på et element efter onload på indholdet og så resizeTo, men skelettet ser sådan ud:

function openSpecs() {
  var specsWin = window.open("","Specifications","width=200,scrollbars=no,status=no,location=no,menubar=no");
  var html="<html><title>Specifikationer</title><script language='javascript' type='text/javascript' src='resize.js'></script></head>";
  html += "<body onload="resizeWin();"><div id='specs' style='width: 195'>";
  html += <%=(rs_specs("beskrivelse"))%>;
  html += "</div></body></html>";
  specsWin.write(html);
  specsWin.close();
}


og så bliver dit link:

<a href="#" onclick="openSpecs();"><%=(rs_specs("Overskrift"))%></a>



Så skal vi også have et resize-script, som skal placeres i resize.js:

function resizeWin() {
  if (document.getElementById('specs')){
    divElm = document.getElementById('specs');
    divH = divElm.offsetHeight;
    winH = divH + 35; // <--denne værdi har jeg ikke noget mål på
    window.resizeTo(210,winH);
}

Det er skrevet direkte ind her, og jeg har ikke lige fundet ud af, hvordan jeg tester det selv, men skelettet er sådan.

hth
jes
Avatar billede roenving Novice
11. maj 2003 - 15:06 #2
Hov der var nogle "" jeg ikke fik styr på:

function openSpecs() {
  var specsWin = window.open("","Specifications","width=200,scrollbars=no,status=no,location=no,menubar=no");
  var html="<html><title>Specifikationer</title><script language='javascript' type='text/javascript' src='resize.js'></script></head>";
  html += "<body onload='resizeWin();'><div id='specs' style='width: 195'>";
  html += <%=(rs_specs("beskrivelse"))%>;
  html += "</div></body></html>";
  specsWin.write(html);
  specsWin.close();
}

-- og så er resize.js her skrevet som en selvstændig fil -- mest for min egen overskueligheds skyld ...
Avatar billede plesner Nybegynder
11. maj 2003 - 15:38 #3
Hmmm der er et eller andet der driller, den vil ikke rigtig godtage det kode i browseren. Magler der stadig et tegn et eller andet sted ?
Avatar billede roenving Novice
11. maj 2003 - 15:52 #4
Har du set, at jeg putter din database-resultat direkte ind i openSpecs-koden ?-)

-- altså at det som det er her kun understøtter et eneste link ...
-- og at du skal åbne din forspørgsel, før det skrives ...
Avatar billede roenving Novice
11. maj 2003 - 15:54 #5
Hvis du slet ikke kan få det til at virke, må vi lige have nogen på, som bedre kan teste end jeg kan ... '-[
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