Avatar billede webbe Nybegynder
20. februar 2004 - 08:36 Der er 29 kommentarer og
1 løsning

Script virker ikke i Safari (Mac)

Hejsa

Er der nogen der kan få disse 2 scripts til at køre i Safari på en mac?

<script type="text/javascript" language="javascript">
var st  = "./images/galleri/"; //mappen med de store billeder

function overpic(e){
  fil = e.src.substring(e.src.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}
</script>
<script language="JavaScript">
<!--
function resizePic(imgName){
    maxHeight=250;
    img=document.images[imgName];
    pic=new Image();
    pic.src=document.images[imgName].src;
    h=pic.height;
    if(h>maxHeight){
        x=h/maxHeight;
        img.height=Math.round(h/x);
        img.width=Math.round(pic.width/x);
        }
    }
//-->
</script>
Avatar billede mm12010 Nybegynder
20. februar 2004 - 08:41 #1
det burde være nok at rette denne:

function overpic(e){
  e=document.getElementById(e)
  fil = e.src.substring(e.src.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}
Avatar billede webbe Nybegynder
20. februar 2004 - 08:46 #2
Nope - så virker det hverken i Explorer (PC/Mac) eller i Safari
Avatar billede mm12010 Nybegynder
20. februar 2004 - 08:56 #3
hvordan kalder du din function?
Avatar billede mm12010 Nybegynder
20. februar 2004 - 08:56 #4
prøv evt:

function overpic(e){
  e=document.images[e]
  fil = e.src.substring(e.src.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}
Avatar billede mm12010 Nybegynder
20. februar 2004 - 08:58 #5
og hvordan ser koden til 'e'-billedet ud?
Avatar billede webbe Nybegynder
20. februar 2004 - 08:59 #6
Jeg kalder mine funktioner her:

Response.Write "<a href=""java script:window.billedPopUp('vispic.asp?bid="&rs("GID")&"&pnum=1',"&B&","&H+20&")""><img src=""images/galleri_tmp/"&rs("Pic1")&""" border=""0"" onMouseOver=""overpic(this),resizePic('visstor');""></a>"

Det er en del af ASP.Image koden.
Avatar billede mm12010 Nybegynder
20. februar 2004 - 09:01 #7
de passer sammen sådan:

function overpic(e){
  e=document.images[e]
  fil = e.src.substring(e.src.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}

Response.Write "<a href=""java script:window.billedPopUp('vispic.asp?bid="&rs("GID")&"&pnum=1',"&B&","&H+20&")""><img src=""images/galleri_tmp/"&rs("Pic1")&""" border=""0"" name=""imageE"" border=""0"" onMouseOver=""overpic(this.name),resizePic('visstor');""></a>"
--------------------------------------------------------------------------------
function overpic(e){
  e=document.getElementById(e)
  fil = e.src.substring(e.src.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}

Response.Write "<a href=""java script:window.billedPopUp('vispic.asp?bid="&rs("GID")&"&pnum=1',"&B&","&H+20&")""><img src=""images/galleri_tmp/"&rs("Pic1")&""" border=""0"" id=""imageE"" border=""0"" onMouseOver=""overpic(this.name),resizePic('visstor');""></a>"
Avatar billede mm12010 Nybegynder
20. februar 2004 - 09:02 #8
sorry den sidste skal være:

Response.Write "<a href=""java script:window.billedPopUp('vispic.asp?bid="&rs("GID")&"&pnum=1',"&B&","&H+20&")""><img src=""images/galleri_tmp/"&rs("Pic1")&""" border=""0"" id=""imageE"" border=""0"" onMouseOver=""overpic(this.id),resizePic('visstor');""></a>"
Avatar billede webbe Nybegynder
20. februar 2004 - 09:02 #9
nope - så siger den

'src' er null eller ikke et objekt
Avatar billede webbe Nybegynder
20. februar 2004 - 09:05 #10
øøhhh - er ikke helt med på hvilket af de script du lige viste jeg skal bruge
Avatar billede mm12010 Nybegynder
20. februar 2004 - 09:07 #11
burde ikke gøre nogen forskel, men dette:

function overpic(e){
  e=document.images[e]
  fil = e.src.substring(e.src.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}

Response.Write "<a href=""java script:window.billedPopUp('vispic.asp?bid="&rs("GID")&"&pnum=1',"&B&","&H+20&")""><img src=""images/galleri_tmp/"&rs("Pic1")&""" border=""0"" name=""imageE"" border=""0"" onMouseOver=""overpic(this.name),resizePic('visstor');""></a>"
Avatar billede webbe Nybegynder
20. februar 2004 - 09:11 #12
Nope - får stadig fejlen

'src' er null eller ikke et objekt

i IE til PC, og det virker ikke på Mac hverken i Safari eller Explorer
Avatar billede mm12010 Nybegynder
20. februar 2004 - 09:31 #13
prøv lige sådan, og sig mig hvad du får:

function overpic(e){
  e=document.images[e].src
  alert(e);
  fil = e.substring(e.lastIndexOf("/")+1);
  document.getElementById('visstor').src = st+fil
}

Response.Write "<a href=""java script:window.billedPopUp('vispic.asp?bid="&rs("GID")&"&pnum=1',"&B&","&H+20&")""><img src=""images/galleri_tmp/"&rs("Pic1")&""" border=""0"" name=""imageE"" onMouseOver=""overpic(this.name),resizePic('visstor');""></a>"
Avatar billede webbe Nybegynder
20. februar 2004 - 09:42 #14
Så får jeg stien til billedet (thumbnail'en) i både explorer til PC/Mac og Safari
Avatar billede mm12010 Nybegynder
20. februar 2004 - 09:42 #15
nogen fejl?
Avatar billede webbe Nybegynder
20. februar 2004 - 09:45 #16
nej - ikke andet end at det store billede ikke vises  explorer/safari på mac
Avatar billede mm12010 Nybegynder
20. februar 2004 - 09:50 #17
ok, så prøv sådan:

function overpic(e){
  e=document.images[e].src
  fil = e.substring(e.lastIndexOf("/")+1);
  document.images['visstor'].src = st+fil
}

og så skal du huske at rette/tilføje 'visstor'-billedets id-arttribut til name="visstor"
Avatar billede webbe Nybegynder
20. februar 2004 - 09:58 #18
Havde id-attributten med.

Nu virker det i explorer til pc/mac, men safari forstår ikke det andet script (det der skalerer proportionalt).
Avatar billede mm12010 Nybegynder
20. februar 2004 - 10:02 #19
virker det bare ikke, eller kommer der nogen fejlmeddelelser?
Avatar billede webbe Nybegynder
20. februar 2004 - 10:07 #20
den viser godt nok et stort billede, men det er ikke skaleret proportionalt som det skal og der kommer ikke nogen fejlmeddelelser.
Avatar billede mm12010 Nybegynder
20. februar 2004 - 10:16 #21
prøv lige sådan, og sig mig hvad du får:

function resizePic(imgName){
    maxHeight=250;
    img=document.images[imgName];
    pic=new Image();
    pic.src=document.images[imgName].src;
    h=pic.height;
    alert(h+">"+maxHeight);
    if(h>maxHeight){
        x=h/maxHeight;
        img.height=Math.round(h/x);
        img.width=Math.round(pic.width/x);
        }
    }
Avatar billede webbe Nybegynder
20. februar 2004 - 10:17 #22
600>250
Avatar billede mm12010 Nybegynder
20. februar 2004 - 10:19 #23
igen :-)

function resizePic(imgName){
    maxHeight=250;
    img=document.images[imgName];
    pic=new Image();
    pic.src=document.images[imgName].src;
    h=pic.height;
   
    if(h>maxHeight){
        x=h/maxHeight;
        img.height=Math.round(h/x);
        alert(x+"||"+img.height);
        img.width=Math.round(pic.width/x);
        }
    }
Avatar billede webbe Nybegynder
20. februar 2004 - 10:22 #24
Ups - glemte lige at sige at 600>250 kun var explorer på PC - på mac siger det 0>250 (explorer/safari)
Avatar billede webbe Nybegynder
20. februar 2004 - 10:23 #25
Det nye siger 2.4||250 på pc og intet på mac - samme problem som vi startede ud med
Avatar billede mm12010 Nybegynder
20. februar 2004 - 10:54 #26
hvad så nu?

function resizePic(imgName){
    maxHeight=250;
    img=document.getElementById(imgName);
    pic=new Image();
    pic.src=document.getElementById(imgName).src;
    h=pic.height;
    if(h>maxHeight){
        x=h/maxHeight;
        img.height=Math.round(h/x);
        alert(x+"||"+img.height);
        img.width=Math.round(pic.width/x);
        }
    }

og så skal du huske at 'visstor'-billedets id- og name arttribut skal være ="visstor"
Avatar billede webbe Nybegynder
20. februar 2004 - 10:58 #27
attributten er rigig nok som du skriver.

Explorer til PC - "Et objekt var ventet"

Explorer til Mac - ingen fejl og kører rigtigt

Safari til Mac - Viser billedet, men resizer ikke proportionalt
Avatar billede mm12010 Nybegynder
20. februar 2004 - 12:05 #28
jeg ved ikke helt hvad det er men safari, men der noget med at den ikke kan håndtere document.images-arrayet rigtigt: http://www.google.com/search?sourceid=navclient&hl=da&ie=UTF-8&oe=UTF-8&q=document%2Eimages+safari

jeg er lige på vej ud døren, men jeg skal nok følge op på det hvis du ikke finder ud af det inden - indtil da ville jeg bruge:

function resizePic(imgName){
    maxHeight=250;
    img=document.images[imgName];
    pic=new Image();
    pic.src=document.images[imgName].src;
    h=pic.height;
    if(h>maxHeight){
        x=h/maxHeight;
        img.height=Math.round(h/x);
        img.width=Math.round(pic.width/x);
        }
    }
Avatar billede webbe Nybegynder
19. marts 2004 - 11:47 #29
lukker
Avatar billede mm12010 Nybegynder
19. marts 2004 - 11:49 #30
ja - der findes vist ingen løsning på problemet på nuværende tidspunkt...
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