Avatar billede hojben Novice
15. november 2005 - 23:14 Der er 26 kommentarer og
1 løsning

onclickopen filens navn i fast størrelse.

mangler noget asp kode eller noget script som åbner et billede når man klikker på det. dvs uanset om jeg så har 2 eller 385458 billeder på en side så skal jeg kun bruge koden een gang.

let / tricky?
Avatar billede softspot Forsker
15. november 2005 - 23:23 #1
Du er godt klar over at 385458 er ret mange billeder på samme side... ikk'? ;D

Anyway! Hvordan skal billedet åbnes og hvordan er det repæsenteret på siden? Er det små ikoner som skal kunne ses i stort format eller er det bare link (<a href...>) med en titel som man så kan klikke på for at se billedet?

Hvis det var billeder, kunne jeg forestille mig at metoden kunne være at gennemløb alle img-elementer på siden og knytte et onclick-event til som åbner billedet i en større udgave.

Du skal bare overveje hvordan det billedet i det store format findes? Er det en information som du "gemmer" i navngivningen af ikonet, f.eks. tn_billede1.jpg, som så kunne pege på det store billede der hed billede1.jpg, eller hvordan hænger det sammen? Eller er det simpelthen bare et spørgsmål om at åbne det samme billede i normal størrelse...?

Som du kan se, er der nok behov for at du er lidt mere specifik i din beskrivelse af hvad det er du vil have, ellers kan du få mange forskellige forslag (som du sikkert ikke kan bruge)...
Avatar billede hojben Novice
15. november 2005 - 23:59 #2
det skal "bare" åbnes som en popup med et større billede af samme navn dog fra en anden mappe.

man kan godt sige at det er små ikoner som skal ses i stort format.....

*** Eller er det simpelthen bare et spørgsmål om at åbne det samme billede i normal størrelse...? *** = JA

lige præcis..
Avatar billede hojben Novice
16. november 2005 - 00:01 #3
kigger ind i morgen.. skal natte nu..
Avatar billede softspot Forsker
16. november 2005 - 00:20 #4
Noget i stil med dette, hvor showimage.asp tager det filnavn der (forhåbentlig) bliver sendt med over i querystring-parameteren "file" og åbner fra den folder hvor billedet nu ligger...

<script type="text/javascript">
function showImage(img) {
  var imgName = img.href.substr(img.href.lastIndexOf("/"));
  window.open('showimage.asp?file='+imgName,'showimage');
}

window.onload = function() {
  // find alle img-tags på siden og sæt deres onclick-event
  var imgs = document.getElementsByTagName("img");
  for(var i=0; i < imgs.length; i++) {
    imgs.onclick = function() { showImage(this); }
  }
}
</script>
Avatar billede hojben Novice
16. november 2005 - 12:42 #5
sådan at man ved hvert billede bare laver et link til showimage.asp fra hvert billede?
Avatar billede softspot Forsker
16. november 2005 - 12:45 #6
Ja, det skulle jeg mene :)
Avatar billede hojben Novice
16. november 2005 - 16:40 #7
Det gør den så ikke desværre..

kigger jeg i koden til showimage.asp står der følgende:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">

<script language="JavaScript">
<!--

function SymError()
{
  return true;
}

window.onerror = SymError;

var SymRealWinOpen = window.open;

function SymWinOpen(url, name, attributes)
{
  return (new Object());
}

window.open = SymWinOpen;

//-->
</script>

<script type="text/javascript">
function showImage(img) {
  var imgName = img.href.substr(img.href.lastIndexOf("/"));
  window.open('showimage.asp?file='+imgName,'showimage');
}

window.onload = function() {
  // find alle img-tags på siden og sæt deres onclick-event
  var imgs = document.getElementsByTagName("img");
  for(var i=0; i < imgs.length; i++) {
    imgs.onclick = function() { showImage(this); }
  }
}
</script>
</body>

<script language="JavaScript">
<!--

window.open = SymRealWinOpen;

//-->
</script>

</html>

og jeg har sgu ik skrevet alt det der gg
Avatar billede softspot Forsker
16. november 2005 - 19:31 #8
Ehm... hvor har du fundet den version af showimage.asp?

Det var meningen at du selv skulle lave en asp-fil, som hentede billedet baseret på den querystring-parameter der sendes med i kaldet fra den scriptkode jeg viste ovenfor (som altså skal ligge i den side hvor de små billeder ligger/vises)...

Jeg tror det er nødvendigt at vi lige synkroniserer vores opfattelse af hvilke filer du har og hvad der skal ligge hvor, så hvis du kan fortælle mig hvad filnavnet på den fil der viser ikonerne og den fil er skal vise det store billede er, så kan vi få placeret koden korrekt...
Avatar billede hojben Novice
17. november 2005 - 07:46 #9
jeg lavede showimage.asp ud fra din scriptkode.

du kan se det her: http://klos.vejs.dk/toj.asp på det første billede har jeg lavet et link til showimage.asp

jeg er ikke asp'er så muligt jeg er helt skæv på den.
Avatar billede softspot Forsker
17. november 2005 - 08:09 #10
OK, det script jeg flikkede sammen skulle ligge i toj.asp og så skal der laves en helt ny (serverside)kode til showimage.asp. Jeg kunne forestille mig noget i stil med dette:

<%@language="vbscript"%>
<%
filename = request.querystring("file") & ""
%>
<html>
<head>
<title><%=filename%></title>
</head>
<body>
<% if len(filename) > 0 then %>
  <img src="storebilleder/<%=filename%>">
<% else %>
  Billedet kunne desværre ikke findes.
<% end if %>
</body>
</html>

som du måske kan gennemskue, så skal du altså udskifte "storebilleder/" (i img-elementets src-attribut) med den korrekte sti til de store billeder.

Jeg håber det er til at gennemskue hvad du skal herfra... :)
Avatar billede hojben Novice
17. november 2005 - 08:20 #11
okay jeg kigger på det i aften.. tak so far
Avatar billede hojben Novice
18. november 2005 - 09:20 #12
det virker ikke.. www.klosdesign.dk/toj.asp

det er som om den ikke tar filnavnet med over..

Showimage:
<%@language="vbscript"%>
<%
filename = request.querystring("file") & ""
%>
<html>
<head>
<title><%=filename%></title>
</head>
<body>
<% if len(filename) > 0 then %>
  <img src="/<%=filename%>">
<% else %>
  Billedet kunne desværre ikke findes.
<% end if %>
</body>
</html>


toj.asp:

<script type="text/javascript">
function showImage(img) {
  var imgName = img.href.substr(img.href.lastIndexOf("/"));
  window.open('showimage.asp?file='+imgName,'showimage');
}

window.onload = function() {
  // find alle img-tags på siden og sæt deres onclick-event
  var imgs = document.getElementsByTagName("img");
  for(var i=0; i < imgs.length; i++) {
    imgs.onclick = function() { showImage(this); }
  }
}
</script>

samt linket til showimage.asp: <a href="showimage.asp"><img src="gfx/militaer2.jpg" width="96" height="250" border="0"></a>
Avatar billede hojben Novice
18. november 2005 - 09:21 #13
billedet militaer2.jpg ligger i gfx mappen og i roden..
Avatar billede softspot Forsker
18. november 2005 - 10:44 #14
Jeg har lige to rettelser til mit kodeforslag (udtag filnavn uden skråstreg i starten, derfor lægger jeg en til i funktionen showImage og referere til indeks i i imgs-listen i stedet for bare at referere til selve listen imgs i window.onload-definitionen):

<script type="text/javascript">
function showImage(img) {
  var imgName = img.href.substr(img.href.lastIndexOf("/") + 1);
  window.open('showimage.asp?file='+imgName,'showimage');
}

window.onload = function() {
  // find alle img-tags på siden og sæt deres onclick-event
  var imgs = document.getElementsByTagName("img");
  for(var i=0; i < imgs.length; i++) {
    imgs[i].onclick = function() { showImage(this); }
  }
}
</script>
Avatar billede hojben Novice
18. november 2005 - 10:51 #15
nu er den ved at være der.. men åbner på en underlig måde..www.klosdesign.dk/toj.asp
Avatar billede hojben Novice
18. november 2005 - 10:55 #16
okay jeg har fanget den nu ;) takker.. men hvor kan jeg definere hvorstort vinduet skal være?
Avatar billede softspot Forsker
18. november 2005 - 10:57 #17
Det er fordi det link du har omkring billedet har en href som peger på showimage.asp. Der skal faktisk slet ikke være et link omkring billedet, da billedet får sit eget onclick-event...

Nu ser den således ud:
<a href="showimage.asp"><img src="gfx/militaer2.jpg" width="96" height="250" border="0"></a>

Den skal nok se således ud:
<img src="gfx/militaer2.jpg" width="96" height="250" border="0">
Avatar billede softspot Forsker
18. november 2005 - 10:59 #18
window.open tager flere parametre, den 3. er egenskaber for hvordan det skal åbnes. Du kan specificere disse flag således:

window.open('showimage.asp?file='+imgName,'showimage','width=400,height=500');

NB: Der må ikke være mellemrum mellem værdierne i den 3. parameter.
Avatar billede hojben Novice
18. november 2005 - 11:02 #19
Perfekt.. det er topnice.. tak og værsgo.. kom med et svar
Avatar billede softspot Forsker
18. november 2005 - 11:03 #20
Velbekomme :)
Avatar billede softspot Forsker
18. november 2005 - 11:06 #21
Tak for point :)
Avatar billede hojben Novice
18. november 2005 - 11:28 #22
hmm noget gik galt gg

Jeg har de store billeder i mappen gfx/store/

bruger dette script:
<script type="text/javascript">
function showImage(img) {
  var imgName = img.href.substr(img.href.lastIndexOf("/gfx/store/") + 1);
  window.open('showimage.asp?file='+imgName,'showimage','width=400,height=500');
}

window.onload = function() {
  // find alle img-tags på siden og sæt deres onclick-event
  var imgs = document.getElementsByTagName("img");
  for(var i=0; i < imgs.length; i++) {
    imgs[i].onclick = function() { showImage(this); }
  }
}
</script>

ved klik åbnes popup men ingen billede.. egenskaber lyder:
http://www.klosdesign.dk/http://www.klosdesign.dk/gfx/militaer2.jpg
Avatar billede softspot Forsker
18. november 2005 - 11:33 #23
Det er fordi du har ændret koden:

var imgName = img.href.substr(img.href.lastIndexOf("gfx/store/") + 1);

skal fortsat være

var imgName = img.href.substr(img.href.lastIndexOf("/") + 1);
Avatar billede hojben Novice
18. november 2005 - 11:36 #24
jamen hvordan finder den så ud af at kigge i mappen gfx/store `? de små billeder ligger kun i gfx
Avatar billede softspot Forsker
18. november 2005 - 11:38 #25
Det skal du angive i showimage.asp i img-elementets src-attribut...
Avatar billede hojben Novice
18. november 2005 - 11:42 #26
jeps fangede den.. det virker nu :) tak
Avatar billede softspot Forsker
18. november 2005 - 11:47 #27
velbekomme :)
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
Kurser inden for grundlæggende programmering

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