Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 31 bis 45 von 51
Like Tree1Likes

Thema: Probleme mit Highscoreeintrag

  1. #31
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    Aber in dieser if-Abfrage schreibst du doch gar nichts in den sessionStorage...

    Kannst du nicht mal den kompletten Code zeigen, wie er jetzt aussieht (am besten nachdem du deine Variablen mal gescheit benannt hast: zz und gz sind komplett aussagelose Namen). Ich habe den Verdacht, dass dein Problem an einer ganz anderen Stelle ist. So ist mir z.B. nicht klar, warum du überhaupt ein reload() brauchst. Alles, was du machen willst, sollte auch ohne reload machbar sein.

  2. #32
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    Hier nochmal der neue überarbeitete Code.

    Code:
    var minZufallszahl = 1;
    var maxZufallszahl = 100;
    var zufallszahl = Math.floor(Math.random() * maxZufallszahl + 1);
    var versuche = 0;
    function Ratespiel() {
           var getippteZahl = document.getElementById("tippfeld").value;
    if (getippteZahl == zufallszahl && versuche < rekordVersuche.innerHTML || getippteZahl == zufallszahl && rekordVersuche.innerHTML == "") {
           versuche++;
           textBereich1.innerHTML="Sie haben die Zahl richtig getippt!";
           textBereich2.innerHTML="Sie haben " +versuche+ " Versuche gebraucht!";
           var meinName = prompt("Sie haben einen neuen Rekord aufgestellt! Bitte geben sie ihren Namen ein!");
           rekordName.innerHTML=meinName;
           rekordVersuche.innerHTML=versuche;
           rekordText.innerHTML="Versuche";
           sessionStorage.setItem("speicher1", rekordName.innerHTML=meinName);
           sessionStorage.setItem("speicher2", rekordVersuche.innerHTML=versuche);
           sessionStorage.setItem("speicher3", rekordText.innerHTML="Versuche");
           var speicher1 = sessionStorage.getItem("speicher1");
           var speicher2 = sessionStorage.getItem("speicher2");
           var speicher3 = sessionStorage.getItem("speicher3");
           location.reload();
           return;
    }
    if (getippteZahl == zufallszahl && versuche >= parseInt(rekordVersuche.textContent,10)) {
            versuche++;
            textBereich1.innerHTML="Sie haben die Zahl richtig getippt!";
            textBereich2.innerHTML="Sie haben " +versuche+ " Versuche gebraucht!";
            location.reload();
            return;
    }
    else if (getippteZahl == "") {
            textBereich1.innerHTML="Sie haben keine Zahl eingegeben!";
            return;
        }
    else if (getippteZahl > zufallszahl) {
            versuche++;
            textBereich1.innerHTML="Die gesuchte Zahl ist kleiner als " + tippfeld.value +"!";
            textBereich2.innerHTML="Dies ist ihr " + versuche + ". Versuch!";
            return;
        }
    else { 
            versuche++;
            textBereich1.innerHTML="Die gesuchte Zahl ist grösser als " + tippfeld.value +"!";
            textBereich2.innerHTML="Dies ist ihr " + versuche + ". Versuch!";
            return;
        }
    };

  3. #33
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    Zitat Zitat von kkapsner Beitrag anzeigen
    Kannst du nicht mal den kompletten Code zeigen
    ...

  4. #34
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    kkapsner meinst Du noch den Html-Code?

  5. #35
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    Ja.

  6. #36
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    So hier noch der Html-Code:

    Code:
    <!DOCTYPE html/>
    <html lang="de">
        <head>
            <meta charset="utf-8"/>
            <title>
                Tipp die Zahl
            </title>
            <link href="ratespiel.css" rel="stylesheet"/>
            <script src="ratespiel.js"></script>
        </head>
        <body>
        <header>
            Tipp die Zahl
        </header>
            <strong>
                Rekord:
            </strong>
            <div id="div1">
            <form id="form1">
                <input type="number" id="tippfeld" placeholder="Zahl bis 100 auswählen"/>
                </form>
                <div id="textBereich1">
                </div>
                <button id="button1" onclick="Ratespiel()">
                    Tippen
                </button>
                 <div id="textBereich2">
            </div>
             </div>
            <div id="rekordName">
            </div>
            <div id="rekordVersuche">
            </div>
            <div id="rekordText">
            </div>
            <script>window.onload=function high() {
                     rekordName.innerHTML = sessionStorage.getItem("speicher1");
                     rekordVersuche.innerHTML = sessionStorage.getItem("speicher2");
                     rekordText.innerHTML = sessionStorage.getItem("speicher3"); 
                };
            </script>
            <footer>
            </footer>
        </body>
    </html>

  7. #37
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    OK - ich sehe dein Problem: du vergleichst zuerst und dann erhöhst du erst. Du musst das umdrehen.

    Aber dein Code könnte auch eine bessere Qualität haben:
    Da ist zuerst die Benennung der Variablen, IDs und sessionStorage-Einträgen. Z.B. "speicher1" sagt doch überhaupt gar nichts aus...
    Dann solltest du HTML-Elemente nicht über die automatisch erzeugten globalen Variablen ansprechen. Dieses Feature ist unzuverlässung (wie globale Variablen prinzipiell). Hole dir die Objekte besser mit document.getElementById().
    Zu guter letzt vergleichst du immer noch Zahlen mit String (.innerHTML und .value liefern immer einen String zurück). Das kann zu ungewollten Ergebnissen führen:
    Code:
    alert(2 < "12");

  8. #38
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    kkapsner kannst Du mir gerade mal auf die Sprünge helfen.
    Ich stehe gerade auf dem Schlauch.
    Welche Stelle oder Stellen meinst Du genau mit Deiner Aussage "OK - ich sehe dein Problem: du vergleichst zuerst und dann erhöhst du erst. Du musst das umdrehen."

  9. #39
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    Hier:
    Code:
    if (getippteZahl == zufallszahl && versuche < rekordVersuche.innerHTML || getippteZahl == zufallszahl && rekordVersuche.innerHTML == "") {
           versuche++;

  10. #40
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    kkapsner schreib mir doch mal bitte wie es aussehen muss dass es funktioniert.
    Das wäre nett.

  11. #41
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    Dreh' doch einfach diese beiden Zeilen um und lösche das versuche++; aus den anderen Blöcken raus (du musst noch ein bisschen deine Prüfreihenfolgen umdrehen...).

  12. #42
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    Also ich merke echt dass ich der totale Anfänger bin was Programme schreiben angeht :-).
    Egal was und wie ich es auch drehe und mache,es ändert sich einfach nichts daran dass es nicht klappt,hm.

  13. #43
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.454

    AW: Probleme mit Highscoreeintrag

    Zitat Zitat von Warlock45 Beitrag anzeigen
    es ändert sich einfach nichts daran dass es nicht klappt,hm.
    das ist dein hauptproblem. formuliere eine konkrete frage
    Das deutsche Javascript Forum http://forum.jswelt.de http://forum.jswelt.de/images/logoJsWeltForumV4_32x22.png
    Sorry wenn ich manchmal ohne Hallo und nur klein schreibe! Dann bin ich nicht unfreundlich sondern mit nervigem kleinem Touch Tablet zugange

  14. #44
    Warlock45 ist offline Jungspund
    registriert
    02-03-2017
    Beiträge
    23

    AW: Probleme mit Highscoreeintrag

    kkapsner ich habe probiert was Du mir gesagt hast aber es klappt einfach nicht.
    Wenn ich die Zeilen umdrehe ändert sich nichts.
    Und wenn ich die "Versuche++" aus den Blöcken nehme zählt es mir die Versuche nicht mehr.

  15. #45
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.500

    AW: Probleme mit Highscoreeintrag

    Code:
    var minZufallszahl = 1;
    var maxZufallszahl = 100;
    var zufallszahl = Math.floor(Math.random() * (maxZufallszahl - minZufallszahl + 1) + minZufallszahl);
    var versuche = 0;
    function Ratespiel(){
    	var getippteZahl = parseInt(document.getElementById("tippfeld").value, 10);
    	var textBereich1 = document.getElementById("textBereich1");
    	var textBereich2 = document.getElementById("textBereich2");
    	if (isNaN(getippteZahl)){
    		textBereich1.innerHTML = "Sie haben keine Zahl eingegeben!";
    	}
    	else {
    		versuche += 1;
    		if (getippteZahl === zufallszahl){
    			textBereich1.innerHTML = "Sie haben die Zahl richtig getippt!";
    			textBereich2.innerHTML = "Sie haben " + versuche + " Versuche gebraucht!";
    			
    			var rekord = parseInt(document.getElementById("rekordVersuche").innerHTML, 10) || Number.POSITIVE_INFINITY;
    			if (versuche < rekord){
    				var meinName = prompt("Sie haben einen neuen Rekord aufgestellt! Bitte geben sie ihren Namen ein!");
    				document.getElementById("rekordName").innerHTML = meinName;
    				document.getElementById("rekordVersuche").innerHTML = versuche;
    				document.getElementById("rekordText").innerHTML = "Versuche";
    				sessionStorage.setItem("speicher1", meinName);
    				sessionStorage.setItem("speicher2", versuche);
    				sessionStorage.setItem("speicher3", "Versuche");
    			}
    			
    			location.reload();
    		}
    		else if (getippteZahl > zufallszahl){
    			textBereich1.innerHTML = "Die gesuchte Zahl ist kleiner als " + tippfeld.value +"!";
    			textBereich2.innerHTML = "Dies ist ihr " + versuche + ". Versuch!";
    		}
    		else {
    			textBereich1.innerHTML = "Die gesuchte Zahl ist grösser als " + tippfeld.value +"!";
    			textBereich2.innerHTML = "Dies ist ihr " + versuche + ". Versuch!";
    		}
    	}
    }
    - ungetestet.

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Ähnliche Themen

  1. xml und js probleme
    Von sungod im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 08-08-2010, 15:54
  2. Probleme mit <pre>-Tag
    Von Grizly im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 26-03-2009, 18:37
  3. Probleme mit iso und utf
    Von IPMedien im Forum CSS und (X)HTML
    Antworten: 9
    Letzter Beitrag: 21-04-2008, 16:46
  4. Probleme mit PHP
    Von greenvalley im Forum Allgemeines
    Antworten: 1
    Letzter Beitrag: 19-07-2006, 21:31
  5. 2 probleme
    Von mascara im Forum Allgemeines
    Antworten: 11
    Letzter Beitrag: 04-04-2003, 13:49

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •