Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> settimeout nie wywołuje się poprawnie, ciągły bład is not defined
Coyot121
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 11.03.2009
Skąd: Cieszyn

Ostrzeżenie: (0%)
-----


Kod
    $("#test").click(function (){loop(4); });
    var i = 0;
    function loop( iHowMany  ){
        
        $("#test").text(i++);
        if ( i < iHowMany ){
            setTimeout("loop( iHowMany )",1000);
        }
    }


w założeniu funkcja ta po naciśnięciu przycisku powinna się powtarzać tak długo dopóki "i" nie będzie mniejsze od 4
Przeszukałem już wiele stron i ciągle nie mogę sobie z tym poradzić. Przy próbie ponownego wywołania funkcji Loop wyskakuje błąd"loop is not defined"

Bardzo proszę o pomoc bo przez to nie mogę kontynuować mojego projektu. ogólnie jako argument będzie podawana tabela z parametrami i po określonym czasie mają one się zmieniać lecz nie mogę przez to przebrnąć
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Coyot121
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 11.03.2009
Skąd: Cieszyn

Ostrzeżenie: (0%)
-----


Kod
$(document).ready(function(){

inne funkcje  nie związane z tym
    
$("#test").click(function (){loop(4); });
    var i = 0;
    function loop( iHowMany  ){
        
        $("#test").text(i++);
        if ( i < iHowMany ){
            setTimeout("loop( iHowMany )",1000);
        }
    }

    
    
});


nic więcej tam nie było,
ps: czemu miałbym kłamać że mi inny komunikat wyskakuje (IMG:style_emoticons/default/questionmark.gif)
finalnie jak mi to zadziałało do funkcji jest przekazywany parametr mówiący jak liczna jest tabela (można to policzyć ale sobie przekazałem), plus tabela ze ścieżkami do zdjęć. W rezultacie uzyskałem to co chciałem czyli zmianę określonych zdjęć przekazanych przez php. i obojętne mi to było jakim sposobem to zrealizuje, tamten mi nie chciał zadziałać więc użyłem tego co działał

finalnie wyszło to tak:
Kod
$(document).ready(function(){

reszta nie związana z tym
    
    $("#again").click(function (){
        location.reload();        
    });
    
    
});
function loop(amount, tab){
      this.interval = null;
      var i = 0;
      this.interval = setInterval(function(){
        
        $('#showimg').attr("src" , tab[i++]);
         if (i == amount){
             $("#again").css('display','block');
             clearInterval(this.interval);
            
         }
        
      },3000);
    }

może nie wygląda to estetycznie i fachowo ale działa więc chwilowo mi wystarczy (IMG:style_emoticons/default/tongue.gif)
wywołanie tego wygląda jeszcze gorzej ale nie znam się jeszcze za dobrze na łączeniu php i javascriptu

Ten post edytował Coyot121 26.05.2011, 15:17:55
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 8.10.2025 - 08:44