Skocz do zawartości
PatrykPlayingPOLSKA

Javascript inkrementacja

Rekomendowane odpowiedzi

Hejka,ostatnio bawię się w js,chcę zrobić takiego prościutkiego clickera

Mam sobie taki kod.

<!DOCTYPE html>
<html>
<body>
<button type="button">
  <center>
    <p id="demo" onclick="myFunction()">Klikaj</p>
  </center>
</button>
<script type="text/javascript">
  
  
function myFunction() 
{
  var a=0;
  a++;
  document.getElementById("demo").innerHTML=a;
}
 
</script>
<b> 
</body>
</html> 

Jak po kodzie widać przycisk "Klikaj" po wciśnięciu zmienia się na "1",a następne wciśnięcia już nic nie robią.Czemu tak się dzieje ? 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

to dziala tak samo jak w kazdym innym jezyku: jesli deklarujesz zmienna wewnatrz funkcji to istnieje ona tylkona czas wywolania tej funkcji, a wiec za kazdym kliknieciem wolasz myFunction(), a w niej masz lokalnie zainicjowanie zmiennej z wartoscia == 0 i nastepnie inkrementacja, to mozna uproscic do:

// z:
var a = 0;
a++;

//do:
var a = 1;

a wiec to, co musisz zrobic to wyciagnac te zmienna poza funkcje, zeby byla widoczna w calym programie, a wiec:

<!DOCTYPE html>
<html>
<body>
<button type="button">
  <center>
    <p id="demo" onclick="myFunction()">Klikaj</p>
  </center>
</button>
<script type="text/javascript">
var a = 0;
  
function myFunction() 
{
  a++;
  document.getElementById("demo").innerHTML=a;
}
 
</script>
<b> 
</body>
</html> 

 

  • Super (+1) 1
  • Lubię (+1) 2

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się tutaj.

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×