Avatar billede -pind-- Nybegynder
01. oktober 2005 - 07:30 Der er 8 kommentarer og
1 løsning

Hjælp mit Script virker ikke idag

Mit Script tager et nyt billede hvær dag, men ikke idag, d. 1/10 Det virkede igår d.30/9, Har det noget med md. skift at gøre,
Her er Scripet.

<title></title>
<script type="text/javascript">
function twoDigits(int){
    return(int<10?"0"+int:int);
}
function imgDate(){
    dato=new Date();
    return (dato.getFullYear()+twoDigits(dato.getMonth()+1)+twoDigits(dato.getDate()));
}

</script>
<script language="JavaScript"> <!--
// No rightclick script
function click() {
if (event.button==2) {
alert('Copyright www.ASIAPIGEN.DK © ');
}
if (event.button==1+2) {
alert ('Copyright www.ASIAPIGEN.DK © ');
}
}
document.onmousedown=click
// --> </script>
</head>

<body bgcolor="#dd1967" topmargin="0" leftmargin="0">

<img src="../gfx/blank.gif" alt="Dagens Foto" style="height:600px;width:800px;" onload="this.src='../gfx/dagens-foto/'+imgDate()+'-image.jpg';this.onload=null;">
</body>

</html>

Er der en der kan hjælpe.
mvh.
Asia
Avatar billede erikjacobsen Ekspert
01. oktober 2005 - 07:56 #1
Hedder dit billede 201501-image.jpg  ?

Sæt en alert ind for at debugge:
alert('../gfx/dagens-foto/'+imgDate()+'-image.jpg');
Avatar billede erikjacobsen Ekspert
01. oktober 2005 - 08:00 #2
Og det gør det jo nok ikke ;)  Derfor denne rettelse

function imgDate(){
    dato=new Date();
    return (""+dato.getFullYear()+twoDigits(dato.getMonth()+1)+twoDigits(dato.getDate()));
}

Dit problem er at "+" i javascript både lægger tal sammen, og sætter strenge sammen.
Når du har måned 9 bliver det til "09" altså en streng. Men måned 10 bliver til 10 altså et tal. Men bank en "" på forrest for at sige at "+" skal bruges til strenge.

Du er ikke den første der oplever at "+" er bitypuel.
Avatar billede Slettet bruger
01. oktober 2005 - 08:14 #3
Byt din føste script-blok med nedenstående

<script type="text/javascript">
function twoDigits(n) {
    return(n < 10 ? "0"+n : n);
}
function imgDate(){
    dato=new Date();
    return (dato.getFullYear() + '' + twoDigits(dato.getMonth()+1) + '' + twoDigits(dato.getDate()));
}

</script>


BTW: int er "reserveret" derfor skift til n
Avatar billede Slettet bruger
01. oktober 2005 - 08:15 #4
Ups være lige opmærksom på at det der kan ligne en " faktisk er 2 '

Hvis det giver nogen mening ;)
Avatar billede -pind-- Nybegynder
01. oktober 2005 - 08:42 #5
Hej
Jeg prøvede lige at Putte ""+ på, og det virker perfekt
Så har jeg ret hvis det er erikjacobsen der skal have point
Asia
Avatar billede -pind-- Nybegynder
01. oktober 2005 - 08:43 #6
Og ellers mange tak for hjælpen til alle
Asia
Avatar billede erikjacobsen Ekspert
01. oktober 2005 - 08:43 #7
Jeg samler slet ikke på point, tak.
Avatar billede -pind-- Nybegynder
01. oktober 2005 - 09:05 #8
Ok så giver jeg til Kryptor, og siger mange tak for hjælpen.
mvh
Asia
Avatar billede roenving Novice
02. oktober 2005 - 12:31 #9
-- og ellers kan den selvfølgelig klares ved at ændre twoDigits-funktionen:

function twoDigits(num){
    return(num<10?"0"+num:""+num);
}
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