Jak zrobic by po kliknieciu na text byl wyswietlany kolejny text

0

witam, mógłby ktoś mi pokazać przykał jak można zrobić
coś typu.
klikam na obrazek pokazuje text = witaj, po kliknieciu pokazuje kolejny text = dzis przegraleś. po kliknieciu na ten text znika.

0

Zapisuj do jakiejś zmiennej (bądź do własnego atrybutu data-) liczbę dotychczasowych kliknięć przycisku - sprawdzaj oraz zwiększaj ją w handlerze.

0
Patryk27 napisał(a):

Zapisuj do jakiejś zmiennej (bądź do własnego atrybutu data-) liczbę dotychczasowych kliknięć przycisku - sprawdzaj oraz zwiększaj ją w handlerze.

mam cos takiego

 	var txt;
var r = confirm("OK or Cancel!");
if (r == true) {
    txt = "You pressed OK!";
} else {
    txt = "You pressed Cancel!";
	return false;
}

wyskakuje takie okienko jak zamiast tego ok albo anuluj umiescic swoj text? i najlepiej normalny text bez tego komunikatu

0

Wykorzystaj funkcję alert.

0
Patryk27 napisał(a):

Wykorzystaj funkcję alert.

alert służy do pokazazania komunikatu u góry przeglądarki
mi chodzi o zwykły napisz bez tego okna

0

Ufoludek opisz dokładnie to co chcesz zrobić. Postaraj się zrobić to po polsku używając przecinków i kropek.

0
Desu napisał(a):

Ufoludek opisz dokładnie to co chcesz zrobić. Postaraj się zrobić to po polsku używając przecinków i kropek.

chodzi mi o coś takiego.
user image
po kliknieciu na obrazek, stwora, handlarza chce otrzymać okno z dialogiem pobieranym z bazy danych

1

Nie programuję gier, ale z grubsza może to wyglądać tak (doczytaj sobie co to branching-dialogue): JSFiddle

// Całe mięcho kodu to ten fragment:
const displayDialog = ({text, options}) => {
  
  // ...

  options.forEach(({ response,next }) => {
    const option = document.createElement('div');
    // ...
    
    option.addEventListener('click', () => {
      document.body.removeChild(container);
      next && displayDialog(dialog[next]);
    });
    
    // ...
  });

  // ...
}

const img = document.querySelector('#werewolf');
img.addEventListener('click', () => {
  displayDialog(dialog[0]);
});
0
Desu napisał(a):

Nie programuję gier, ale z grubsza może to wyglądać tak (doczytaj sobie co to branching-dialogue): JSFiddle

// Całe mięcho kodu to ten fragment:
const displayDialog = ({text, options}) => {
  
  // ...

  options.forEach(({ response,next }) => {
    const option = document.createElement('div');
    // ...
    
    option.addEventListener('click', () => {
      document.body.removeChild(container);
      next && displayDialog(dialog[next]);
    });
    
    // ...
  });

  // ...
}

const img = document.querySelector('#werewolf');
img.addEventListener('click', () => {
  displayDialog(dialog[0]);
});

dzieki wielkie, w jaki sposób mogę użyć odczytu z bazy danych?

1

Pewnie trochę przekombinowałem, ale bardzo chciałem użyć generatorów, bo ostatnio się nimi bawię :D Pamiętaj tylko, że funkcja którą dodałem na samej górze - fetch - jest tylko na potrzeby tego dema. Jeżeli będziesz używał ten kod, to z powodzeniem możesz ją wywalić, bo przeglądarka ją ma.

Tutaj masz diffa*, a tutaj nowy JSFiddle

diff - czyli to co zostało zmienione między poprzednim kodem, a aktualnym, żebyś łatwiej wyłapał jaka zmiana jest odpowiedzialna za pobieranie z bazy

0

Panie Zielony Ufoludek można się jakoś skontaktować? Zainteresował mnie projekt, nad którym Pan pracuje :)

0
Biały Młot napisał(a):

Panie Zielony Ufoludek można się jakoś skontaktować? Zainteresował mnie projekt, nad którym Pan pracuje :)

[email protected]

1 użytkowników online, w tym zalogowanych: 0, gości: 1