Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 02:42 Der er 36 kommentarer og
1 løsning

Billede oversigt? [JavaScript]

Hejsa

Det er sådan at jeg har set på Tuborg's hjemmeside, deres shop del.

http://shop.tuborg.dk/shop.html

Når du klikker på linket, så klik videre ind i shoppen. Når du er kommet ind så kan du se en masse vare på en lang linie, og en pil i hver ende...


Jeg kunne godt tænke mig sådan en, bare til mit foto galleri, hvor man så kan "køre" billederne på. Og hvis man klikker på det aktuelle foto at det åbner i en popup... Håber at der er nogen som kan hjælpe mig med det...


NB.
Søger en som vil lave scriptet for mig, der er 100 point til den som laver det til mig...


Se evt.: http://www.iknow.dk/spm/1127
- Der er en løsning, man kan ikke få det til at virke?
Avatar billede roenving Novice
19. juli 2003 - 02:54 #1
Det er da godt, at du har set at dette site også kan hjælpe -- men jeg kan da ikke lade være med at grine en anelse, når jeg ser, at du har kopieret teksten direkte over ... (Men har brugt E*-regler om points-givning !-)

-- men i iknow-spm skriver du, at du ikke kan få det til at virke ?-)

-- det er godt nok ikke særlig køn kode, men hvordan fejler det ?o]
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:01 #2
Hej roenving

Jeg har opgivet at vente hos iknow.dk da jeg ikke fik den hjælp jeg havde behov for, for at få det til at virke...

Lige pt fejler den ikke, for den kode der ligger du har jeg smidt af helvedes til da jeg ikke kunne få den til at virke.

Så jeg håbede at der var nogen her inde som kunne give mig en kode som f.eks. virkede?

Den skal indlæses en fil som hedder Galleri.asp

Den skal så hente billeder fra \images\private\Galleri

og automatisk finde ud af hvor mange filer den er i den mappe og vise dem på den måde og åbne dem i en popup når man klikker på dem? Hvis dette kan lade sig gøre.
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:02 #3
Der vil kun være 5-8 billeder i den mappe \images\private\Galleri
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:03 #4
Det gik vist lidt stærkt det her, den fil hedder ikke galleri.asp men default.asp hvor koden vil blive smidt ind i og så skal den hente billederne fra den distaniation
Avatar billede roenving Novice
19. juli 2003 - 03:12 #5
Jeg har ikke haft lejlighed til at teste, men nu har jeg gennemgået den kode, du havde fået på iknow -- mange småting, men egentlig kunne jeg ikke finde nogle alvorlige fejl ...

-- men prøv dette -- og fortæl så, hvordan det virker:

<html>
<head>
<script language="javascript"  type="text/javascript">
var antal = 9;

var thumb = new Array()
var billede = new Array()

// thumb[#] = Dit thumb-billede
// billede[#] = Billedet i naturlig størrelse

thumb[1] = new Image();
thumb[1].src = "ThumbImage001.jpg";
billede[1] = new Image();
billede[1].src = "Image001.jpg";

thumb[2] = new Image();
thumb[2].src = "ThumbImage002.jpg";
billede[2] = new Image();
billede[2].src = "Image002.jpg";

thumb[3] = new Image();
thumb[3].src = "ThumbImage003.jpg";
billede[3] = new Image();
billede[3].src = "Image003.jpg";

thumb[4] = new Image();
thumb[4].src = "ThumbImage004.jpg";
billede[4] = new Image();
billede[4].src = "Image004.jpg";

thumb[5] = new Image();
thumb[5].src = "ThumbImage005.jpg";
billede[5] = new Image();
billede[5].src = "Image005.jpg";

thumb[6] = new Image();
thumb[6].src = "ThumbImage006.jpg";
billede[6] = new Image();
billede[6].src = "Image006.jpg";

thumb[7] = new Image();
thumb[7].src = "ThumbImage007.jpg";
billede[7] = new Image();
billede[7].src = "Image007.jpg";

thumb[8] = new Image();
thumb[8].src = "ThumbImage008.jpg";
billede[8] = new Image();
billede[8].src = "Image008.jpg";

thumb[9] = new Image();
thumb[9].src = "ThumbImage009.jpg";
billede[9] = new Image();
billede[9].src = "Image009.jpg";

var nr = 1;
var set = new Array()
for (i=1;6>i;i++){
set[i] = billede[i];
}

function getbillede(i) {
document.images['image0'].src = set[i].src;
}

function moveright() {
if(nr < antal-4) {
nr++;
document.images['image1'].src = thumb[nr].src;
document.images['image2'].src = thumb[nr+1].src;
document.images['image3'].src = thumb[nr+2].src;
document.images['image4'].src = thumb[nr+3].src;
document.images['image5'].src = thumb[nr+4].src;
set[1] = billede[nr];
set[2] = billede[nr+1];
set[3] = billede[nr+2];
set[4] = billede[nr+3];
set[5] = billede[nr+4];
}
}

function moveleft() {
if(nr > 1) {
nr--;
document.image1.src = thumb[nr].src;
document.image2.src = thumb[nr+1].src;
document.image3.src = thumb[nr+2].src;
document.image4.src = thumb[nr+3].src;
document.image5.src = thumb[nr+4].src;
set[1] = billede[nr];
set[2] = billede[nr+1];
set[3] = billede[nr+2];
set[4] = billede[nr+3];
set[5] = billede[nr+4];
}
}
</script>
<title>Billed Galleri</title>
</head>

<body>
<center>
<img src="LeftArrow.jpg" onMouseover="moveleft();">

<script language="javascript"  type="text/javascript">
document.write('<img src="+thumb[1].src+" name="image1" onMouseover="getbillede(1);"> ');
document.write('<img src="+thumb[2].src+" name="image2" onMouseover="getbillede(2);"> ');
document.write('<img src="+thumb[3].src+" name="image3" onMouseover="getbillede(3);"> ');
document.write('<img src="+thumb[4].src+" name="image4" onMouseover="getbillede(4);"> ');
document.write('<img src="+thumb[5].src+" name="image5" onMouseover="getbillede(5);"> ');
document.write('<img src="RightArrow.jpg" onMouseover="moveright();">');
document.write('<P><img src="+set[3].src+" name="image0">');
</script>
</center>
</body>
</html>
Avatar billede roenving Novice
19. juli 2003 - 03:16 #6
Desværre (næh... heldigvis !-) kan javascript _ikke_ læse fra et bibliotek, så du er nødt til manuelt at indsætte, hvis du skal bruge javascript ...

-- eventuelt kan du bruge asp til at lave en løkke, som skriver alle billed-navne mv. ind ...

-- som start har jeg ikke sat popup'en ind, men det er ikke det sværeste -- kig f.eks. på http://roenving.users.whitehat.dk/index.html?/WD1ResizeTilBillede.html
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:17 #7
Jeg prøver lige og lave nogen test-billeder nu og lige prøve at få det til at virke så, du kan følge med her hvis det er:

http://80.196.116.26/galleri.asp (Skal bare have det fra denne her adresse ind i min allerede default.asp - kun koden, så det bliver intregreret på siden default.asp
Avatar billede roenving Novice
19. juli 2003 - 03:19 #8
-- og jeg fandt sæ'fø'li' den første fejl:

document.write('<img src="'+thumb[1].src+'" name="image1" onMouseover="getbillede(1);"> ');
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:21 #9
oki, men hvis jeg skal have det ind på den her side:
- http://80.196.116.26/new/

Du kan se nederst, der skal billederne gerne køre. Hvor meget af kildekoden skal jeg så tage og kopirer ind der?
Avatar billede roenving Novice
19. juli 2003 - 03:22 #10
Der skal altså ' ind i alle de document.write-sætninger, som indeholder src="+osv.

<script language="javascript"  type="text/javascript">
document.write('<img src="'+thumb[1].src+'" name="image1" onMouseover="getbillede(1);"> ');
document.write('<img src="'+thumb[2].src+'" name="image2" onMouseover="getbillede(2);"> ');
document.write('<img src="'+thumb[3].src+'" name="image3" onMouseover="getbillede(3);"> ');
document.write('<img src="'+thumb[4].src+'" name="image4" onMouseover="getbillede(4);"> ');
document.write('<img src="'+thumb[5].src+'" name="image5" onMouseover="getbillede(5);"> ');
document.write('<img src="RightArrow.jpg" onMouseover="moveright();">');
document.write('<P><img src="'+set[3].src+'" name="image0">');
</script>
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:29 #11
Når jeg har indsat det, så kommer det til at se ud som det gør nu, men så er det jeg gerne vil indtaste hvor den skal hente billederne ikke?

images/privat/galleri/Thumb1.jpg
images/privat/galleri/1.jpg

De hører sammen, men hvordan vil du skrive dem ind?
For jeg fatter ikke helt det her må jeg godt nok indrømme, jeg er ikke ligefrem nogen "haj" til det her jo :)
Avatar billede roenving Novice
19. juli 2003 - 03:43 #12
Det her er den samlede kode, men jeg har jo ikke haft chance for at teste det ...

Øverst kommer al den javascript-kode du skal sætte ind (jeg vil sætte det ind i <HEAD>-sektionen ,-)

Nederst kommer den stump, du skal sætte ind, hvor du har din tabel idag ...

dine billede-navne indsætter du foroven i preloader-sektionen -- og jeg har ikke endnu fået lavet det, så den får de store billeder med, men det kommer vi til -- måske skulle vi bare tage de store billeder ?-)

Hvis du bare har 6-8-10 så er det ikke farligt, men er det mange, såeh ...

-- og jeg var lige doven, så jeg tog min funktion fra ovenstående link og kopierede ind lige nu ...

<script language="javascript"  type="text/javascript">
var antal = 9;

var thumb = new Array()
var billede = new Array()

// thumb[#] = Dit thumb-billede
// billede[#] = Billedet i naturlig størrelse

thumb[1] = new Image();
thumb[1].src = "ThumbImage001.jpg";
billede[1] = new Image();
billede[1].src = "Image001.jpg";

thumb[2] = new Image();
thumb[2].src = "ThumbImage002.jpg";
billede[2] = new Image();
billede[2].src = "Image002.jpg";

thumb[3] = new Image();
thumb[3].src = "ThumbImage003.jpg";
billede[3] = new Image();
billede[3].src = "Image003.jpg";

thumb[4] = new Image();
thumb[4].src = "ThumbImage004.jpg";
billede[4] = new Image();
billede[4].src = "Image004.jpg";

thumb[5] = new Image();
thumb[5].src = "ThumbImage005.jpg";
billede[5] = new Image();
billede[5].src = "Image005.jpg";

thumb[6] = new Image();
thumb[6].src = "ThumbImage006.jpg";
billede[6] = new Image();
billede[6].src = "Image006.jpg";

thumb[7] = new Image();
thumb[7].src = "ThumbImage007.jpg";
billede[7] = new Image();
billede[7].src = "Image007.jpg";

thumb[8] = new Image();
thumb[8].src = "ThumbImage008.jpg";
billede[8] = new Image();
billede[8].src = "Image008.jpg";

thumb[9] = new Image();
thumb[9].src = "ThumbImage009.jpg";
billede[9] = new Image();
billede[9].src = "Image009.jpg";

var nr = 1;

function moveright() {
    if(nr < antal-2) {
        nr++;
        document.images['image1'].src = thumb[nr].src;
        document.images['image2'].src = thumb[nr+1].src;
        document.images['image3'].src = thumb[nr+2].src;
    }
}

function moveleft() {
    if(nr > 1) {
        nr--;
        document.images['image1'].src = thumb[nr].src;
        document.images['image2'].src = thumb[nr+1].src;
        document.images['image3'].src = thumb[nr+2].src;
    }
}

    function popWin(file){
      newWin=window.open("","ResizeBillede","width=300,height=200,status=no");
      txt='<ht'+'ml><he'+'ad><ti'+'tle>Resize til 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;window.resizeTo(w+6,h+32);}<\57scri';
      txt+='pt><\57he'+'ad><bo'+'dy style="overflow:hidden;';
      txt+='border:0px;margin:0px"><i'+'mg src="'+file+'" style="top:0px;left:0px;border:0px;';
      txt+='" onload="resPic();"><\57bo'+'dy><\57ht'+'ml>';
      newWin.document.write(txt);
      newWin.document.close();
    }
</script>





      <table border="1" width="100%" cellspacing="0" cellpadding="2" bordercolorlight="#B6BC59" bordercolordark="#B6BC59">
        <tr>
          <td width="100%" bgcolor="#B6BC59">
            <div class=h1><button onclick="moveleft()">&lt;&lt;</button>&nbsp; PROFIL-FOTO&nbsp; <button onclick="moveright()">&gt;&gt;</button></div>
          </td>
        </tr>
        <tr>
          <td width="100%">
            <table border="0" width="100%">
              <tr>
<script language="javascript"  type="text/javascript">
document.write('<td width="33%" align="center"><img border="0" src="'+thumb[1].src+'" name="image1" onclick="popWin(this.src);"></td> ');
document.write('<td width="34%" align="center"><img border="0" src="'+thumb[2].src+'" name="image2" onclick="popWin(this.src);"></td> ');
document.write('<td width="33%" align="center"><img border="0" src="'+thumb[3].src+'" name="image3" onclick="popWin(this.src);"></td> ');
</script>
              </tr>
            </table>

          </td>
        </tr>
      </table>
Avatar billede roenving Novice
19. juli 2003 - 03:54 #13
-- og de ændringer, som er nødvendige uden thumbs:

var antal = 9;

var billede = new Array()

// billede[#] = Billedet i naturlig størrelse

billede[1] = new Image();
billede[1].src = "images/privat/galleri/1.jpg";

billede[2] = new Image();
billede[2].src = "images/privat/galleri/2.jpg";
... osv.

function moveright() {
    if(nr < antal-2) {
        nr++;
        document.images['image1'].src = billede[nr].src;
        document.images['image2'].src = billede[nr+1].src;
        document.images['image3'].src = billede[nr+2].src;
    }
}

function moveleft() {
    if(nr > 1) {
        nr--;
        document.images['image1'].src = billede[nr].src;
        document.images['image2'].src = billede[nr+1].src;
        document.images['image3'].src = billede[nr+2].src;
    }
}

<script language="javascript"  type="text/javascript">
document.write('<td width="33%" align="center"><img border="0" width="150" src="'+billede[1].src+'" name="image1" onclick="popWin(this.src);"></td> ');
document.write('<td width="34%" align="center"><img border="0" width="150" src="'+billede[2].src+'" name="image2" onclick="popWin(this.src);"></td> ');
document.write('<td width="33%" align="center"><img border="0" width="150" src="'+billede[3].src+'" name="image3" onclick="popWin(this.src);"></td> ');
</script>
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 03:58 #14
Dvs. din sidste kode gør at jeg ikke behøver thumbs?
- Den gør dem selv mindre, og når man klikker vises de i fuld størrelse i et popup vindu? eller hva?

Det ser da ud til at virke nu, billederne skal bare lige laves i samme størelse, fixer jeg selv på et tidspunkt når det hele virker
Avatar billede roenving Novice
19. juli 2003 - 04:04 #15
-- ideen med det sidste er præcis det, ja !-)

Width="150" giver den en fast bredde -- højden vil så tilpasse sig automatisk, men vil ikke ændre i sidens visning i bredden ...
Avatar billede roenving Novice
19. juli 2003 - 04:07 #16
Vi skal lige fixe lidt på kaldet til popWin, hvis du vil have både thumbs og fuld-størrelse-billeder, men problemer klarer vi med det samme, mirakler er der en lille ventetid på *g*
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:13 #17
Haløjsa roenving

Det ser jo skide godt ud nu *GG*, eller det virker da *S*

De der 2 knapper, hvordan får jeg dem så helt ud i enderne af hver sin side, den som skal kunne skubbe billederne til højre skal være helt ude til højre side af ramme, og ligeledes med den til venstre ude til venstre?
Avatar billede roenving Novice
19. juli 2003 - 04:17 #18
Et lille trick, som jeg regner med virker:
<div class=h1><div style="float:left;"><button onclick="moveleft()">&lt;&lt;</button></div>&nbsp; PROFIL-FOTO&nbsp; <div style="float:right;"><button onclick="moveright()">&gt;&gt;</button></div></div>
Avatar billede roenving Novice
19. juli 2003 - 04:18 #19
Hov, du har fået fjernet linjen med
var nr = 1
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:20 #20
Hvor skulle var nr = 1 være henne?

Og det virker ikke helt, men kan ikke skubbe billederne lige nu??
Avatar billede roenving Novice
19. juli 2003 - 04:22 #21
Nej, for den accepterer ikke at du ændrer noget som ikke findes !-)

Den var her før -- der skal den tilbage til:

var nr = 1;

function moveright() {

-- det der med miraklerne ser vist ud til at passe *g*
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:25 #22
Jeg må være ærlig og indrømme at jeg ikke lige kan knække hvor du vil have

var nr = 1;

function moveright() {

Ind henne, ved godt det skal være et sted oppe i toppen (head) men hvor sådan nærmere betegnet?
Avatar billede roenving Novice
19. juli 2003 - 04:33 #23
find det sted, hvor du har linjen
function moveright(){

og erstat den linje med de to linjer ...
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:39 #24
Det giver mig problemer må jeg indrømme, kan ikke lige finden fejlen nu, men ændrede det oppe i toppen, billederne kan ikke vises nu :(
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:51 #25
Det giver oz noget underholdning det her hva? *G*
Avatar billede roenving Novice
19. juli 2003 - 04:52 #26
Du har også en gentagelse af kode -- det kan ihvertfald give problemer to gange at skrive:
billede[2] = new Image();

få lige ændret det ...

-- og du skal selvfølgelig ændre linjen var antal = 9 til det antal billeder, du i virkeligheden har ...
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:54 #27
Oki, tror jeg har fixet det andet problem igen, så nu virker den der "køre dims" igen :)
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 04:58 #28
Hm.. Jeg tror sørmer at det virker nu hvis jeg nu lader mine fingre væk fra koden nu, så tror jeg den er der roenving

Dog er der lige det linie skifte oppe i det grønne, der hvor man trykker sig frem eller tilbage - ude til højre er en linie længere nede?
Avatar billede roenving Novice
19. juli 2003 - 04:58 #29
Lige nu findes billede[3] jo ikke ...
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 05:00 #30
Gør det ikke, jeg ser da billede 1, 2 og 3???
Avatar billede roenving Novice
19. juli 2003 - 05:00 #31
Det linjeskift har jeg brugt det meste af den sidste time på ...

Jeg må indrømme, at den forstår jeg ikke, at jeg ikke har kunnet undgå ?-)
Avatar billede roenving Novice
19. juli 2003 - 05:01 #32
Jeg skrev det jo lige efter at have kigget i kilde-koden, hvor det ikke fandtes ...
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 05:04 #33
Men ellers virker det hele totally smukt, og det fungere - hvor er det da godt lavet roenving :)

Jeg smider lige lidt ekstra point oven i, udover de 30 da det er rigtig godt arbejde og så her mega tidligt :)

Mange tak skal du have...

Ps. Håber du har en evt. løsning for det linie skifte der? og så må du meget gerne lige smide et Svar :)
Avatar billede roenving Novice
19. juli 2003 - 05:08 #34
Jeg er ikke færdig med at kigge på mulige løsninger, for det er da grimt ...

-- ellers kender jeg ihvertfald det trick, som hedder en ny tabel med 3 celler, men den burde skulle kunne lykkes uden ...

-- og velbekomme '-)
Avatar billede syngre.net-team Nybegynder
19. juli 2003 - 05:14 #35
Så er det blevet rettet, og med det takker jeg endnu engang og her får du så dine meget velfortjente og sur-tjente point :)
Avatar billede roenving Novice
19. juli 2003 - 05:15 #36
Altså denne løsning, men det er zq da *#¤#¤#%&%
<table width="100%"><tr>
          <td width="100%" class="h1" style="text-align:center;background:#B6BC59;">
              <table width="100%"><tr>
                  <td align="left"><button onclick="moveleft()">&lt;&lt;</button></td>
                  <td align="center">PROFIL-FOTO</td>
                  <td align="right"><button onclick="moveright()">&gt;&gt;</button></td>
                </tr></table></td>
</tr></table>
Avatar billede roenving Novice
19. juli 2003 - 05:19 #37
-- og tak for points ;~}
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