Kom ihåg mig?
Home Menu

Menu


Javascript setTimeout

Ämnesverktyg Visningsalternativ
Oläst 2009-11-24, 12:54 #1
Althalos Althalos är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 282
Althalos Althalos är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 282
Standard Javascript setTimeout

Varför fungerar inte det här:
function updateImage() {
if ($(".girl-img").css("background-position-y") == "-96px") $(".girl-img").css("background-position-y", "-474px");
if ($(".girl-img").css("background-position-y") == "-474px") $(".girl-img").css("background-position-y", "-837px");
if ($(".girl-img").css("background-position-y") == "-837px") $(".girl-img").css("background-position-y", "-96px");
window.setTimeout(updateImage(), 2000);
}
updateImage();

tack
Althalos är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-11-24, 13:04 #2
StefanBergfeldts avatar
StefanBergfeldt StefanBergfeldt är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Sep 2004
Inlägg: 1 535
StefanBergfeldt StefanBergfeldt är inte uppkopplad
Bara ett inlägg till!
StefanBergfeldts avatar
 
Reg.datum: Sep 2004
Inlägg: 1 535
Ska det inte vara
window.setTimeout("updateImage()", 2000);
StefanBergfeldt är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-11-24, 14:04 #3
Althalos Althalos är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 282
Althalos Althalos är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 282
Det fungerar inte heller. Felmeddelandet i konsollen är att updateImage är undefined. Så det måste finnas något annat fel också.

jag ska även säga att runt alltihop så ligger $(document).ready(function() { });
Althalos är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-11-24, 14:22 #4
dotvoid dotvoid är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 199
dotvoid dotvoid är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 199
Du ska skicka med en referens till den funktion du ska använda så här:
window.setTimeout(updateImage, 2000);

Alternativt så fungerar det också med en sträng innehållande javascript
window.setTimeout("updateImage()", 2000);

Annars så skickar du ju in returvärdet från updateImage() som första parameter till setTimeout. Det är ju inte riktigt vad du vill.
dotvoid är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-11-24, 14:30 #5
dotvoid dotvoid är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 199
dotvoid dotvoid är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 199
Citat:
Ursprungligen postat av Althalos Visa inlägg
Det fungerar inte heller. Felmeddelandet i konsollen är att updateImage är undefined. Så det måste finnas något annat fel också.

jag ska även säga att runt alltihop så ligger $(document).ready(function() { });
Glömde. Det förklarar ju saken. Läs på lite om scope. Funktionen updateImage() finns ju bara i kontexten av den anonyma funktion du skapar ovan.

Lägg definitionen av updateImage() utanför dokument.ready()
dotvoid är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-11-24, 16:46 #6
Althalos Althalos är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 282
Althalos Althalos är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 282
Ahh... jag började tro att det inte fanns någon logik i det hela, men det finns det naturligtvis alltid. Tack så jättemkt
Althalos är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 07:27.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017