Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2016
    Messaggi
    17

    problemi con l'esecuzione di due funzioni al click di un button

    salve,
    compilando il gioco del prato fiorito in html ho avuto problemi nel far eseguire due funzioni contemporaneamente (rispettivamente la funzione della vincita e dell'eliminazione del button) nei button corrispondenti alle posizioni senza "i fiori" la funzione che elimina il button funziona perfettamente ma non si può dire lo stesso dell'altra (consistente nell'incremento di una variabile che raggiunto un certo numero determina la vittoria),chi può darmi gentilmente una mano?
    qui di seguito il codice:

    codice:
    <html>
     <head>
     <style>
        .demo {
            border:4px solid #000000;
            border-collapse:collapse;
            padding:5px;
        }
        .demo th {
            border:2px solid #000000;
            padding:5px;
            background:#F8F8FF;
        }
        .demo td {
            border:2px solid #000000;
            padding:5px;
            background:#F8F8FF;
        }
        
        
       div.divor *{
        display: block;
        width:100%
       }
       
       .butt {
      background: #14f2fa;
      background-image: -webkit-linear-gradient(top, #14f2fa, #1cdb5c);
      background-image: -moz-linear-gradient(top, #14f2fa, #1cdb5c);
      background-image: -ms-linear-gradient(top, #14f2fa, #1cdb5c);
      background-image: -o-linear-gradient(top, #14f2fa, #1cdb5c);
      background-image: linear-gradient(to bottom, #14f2fa, #1cdb5c);
      -webkit-border-radius: 19;
      -moz-border-radius: 19;
      border-radius: 19px;
      -webkit-box-shadow: 2px 2px 10px #050505;
      -moz-box-shadow: 2px 2px 10px #050505;
      box-shadow: 2px 2px 10px #050505;
      font-family: georgia;
      color: #000000;
      font-size: 23px;
      padding: 10px 20px 10px 20px;
      text-decoration: none;
    }
    
    
    .butt:hover {
      background: #3cb0fd;
      background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
      background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
      background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
      background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
      background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
      text-decoration: none;
    }
    </style>
     <script language="Javascript">
    var i=0;
     function win(i){
     i++;
     if(i==12)
     {
     alert("HaI vInTo");
     document.location.reload()
     }
     }
    
    
     function lose()
     {
     clicksound.playclip()
     alert("HaI pErSo!!")
    
    
     }
     
    var html5_audiotypes={ 
        "mp3": "audio/mpeg",
        "mp4": "audio/mp4",
        "ogg": "audio/ogg",
        "wav": "audio/wav"
    }
    function createsoundbite(sound){
        var html5audio=document.createElement('audio')
        if (html5audio.canPlayType){ 
            for (var i=0; i<arguments.length; i++){
                var sourceel=document.createElement('source')
                sourceel.setAttribute('src', arguments[i])
                if (arguments[i].match(/.(w+)$/i))
                    sourceel.setAttribute('type', html5_audiotypes[RegExp.$1])
                html5audio.appendChild(sourceel)
            }
            html5audio.load()
            html5audio.playclip=function(){
                html5audio.pause()
                html5audio.currentTime=0
                html5audio.play()
            }
            return html5audio
        }
        else{
            return {playclip:function(){throw new Error("Il tuo browser purtroppo non supporta i tag HTML5")}}
        }
    }
    var clicksound=createsoundbite("doh!.mp3")
    
    
     </script>
    <p align="center"><font align="center" face="impact" size="8" color="red"><strong>PRATO FIORITO</strong></font></p>
    <p align="center"><font align="center" face="impact" size="3" color="red">realizzato da petruzzi matteo e federico falco</font></p>
     </head>
     <body bgcolor="gold">
     
     <table align="center" width="500" height="500" border="2" class="demo">
      <tr>
            <th><div class="divor"id="win1"><button class="butt"  onclick='document.getElementById("win1").style.display="none";win(i);'>?</button></div></th>
            <th><div class="divor"id="win2" ><button class="butt"  onclick='document.getElementById("win2").style.display="none";win(i);'>?</button></div></th>
            <th><div class="divor"><button class="butt" onclick="lose()">?</button></div></th>
            <th><div class="divor"id="win3"><button class="butt"onclick='document.getElementById("win3").style.display="none";win(i);'>?</button></div></th>
        </tr>
        <tr>
            <td><div class="divor"id="win4"><button class="butt" onclick='document.getElementById("win4").style.display="none";win(i);'>?</button></div></td>
            <td><div class="divor"><button class="butt" onclick="lose()">?</button></div></td>
            <td><div class="divor"id="win5"><button class="butt" onclick='document.getElementById("win5").style.display="none";win(i);'>?</button></td>
            <td><div class="divor"id="win6"><button class="butt" onclick='document.getElementById("win6").style.display="none";win(i);'>?</button></td>
        </tr>
        <tr>
            <td><div class="divor"id="win7"><button class="butt" onclick='document.getElementById("win7").style.display="none";win(i);'>?</button></div></td>
            <td><div class="divor"id="win8"><button class="butt" onclick='document.getElementById("win8").style.display="none";win(i);'>?</button></div></td>
            <td><div class="divor"><button class="butt"onclick="lose()">?</button></div></td>
            <td><div class="divor"id="win9"><button class="butt" onclick='document.getElementById("win9").style.display="none";win(i);'>?</button></div></td>
        </tr>
        <tr>
            <td><div class="divor"><button class="butt"  onclick="lose()">?</button></div></td>
            <td><div class="divor"id="win10"><button class="butt"  onclick='document.getElementById("win10").style.display="none";win(i);'>?</button></div></td>
            <td><div class="divor"id="win11"><button class="butt"  onclick='document.getElementById("win11").style.display="none";win(i);'>?</button></div></td>
            <td><div class="divor"><button class="butt"  onclick="lose()">?</button></div></td>
        </tr>
        <tr>
            <td><div class="divor"><button class="butt"  onclick="lose()">?</button></div></td>
            <td><div class="divor"><button class="butt"  onclick="lose()">?</button></div></td>
            <td><div class="divor"id="win12"><button class="butt" onclick='document.getElementById("win12").style.display="none";win(i);'>?</button></div></td>
            <td><div class="divor"id="win13"><button class="butt" onclick='document.getElementById("win13").style.display="none";win(i);'>?</button></div></td>
        </tr>
        </table>
     </body>
     </html>
    Ultima modifica di ciro78; 05-05-2016 a 22:24 Motivo: tag code

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ciao benvenuto sul forum.
    ti invito a leggere il regolamento soprattutto le parti che riguardano titoli e tag code.
    Aggiungo inoltre che magari se aggiungi qualche info in più sull'errore ti si aiuta più facile
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2016
    Messaggi
    17
    salve ,
    ho rivisto il programma e ho verificato che a quanto pare mi esegue tutte e due le funzioni e inoltre ho aggiunto una modifica nella funzione di vittoria:

    codice:
     function win(i){
     document.getElementById("win")[i].innerHTML= ++i;
     if(i==12)
     {
     alert("Hai ViNtO!!")
     document.location.reload();
     }
     }
    ora mi segna come errore che document.getElementById("win")[i].innerHTML= ++i; e' indefinito
    Ultima modifica di ciro78; 07-05-2016 a 19:07 Motivo: tag code

  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Quote Originariamente inviata da matteo9 Visualizza il messaggio
    salve ,
    ho rivisto il programma e ho verificato che a quanto pare mi esegue tutte e due le funzioni e inoltre ho aggiunto una modifica nella funzione di vittoria:
    function win(i){
    document.getElementById("win")[i].innerHTML= ++i;
    if(i==12)
    {
    alert("Hai ViNtO!!")
    document.location.reload();
    }
    }
    ora mi segna come errore che document.getElementById("win")[i].innerHTML= ++i; e' indefinito
    ok matteo vedo che ignori i miei consigli. ....meglio se usi i tag code...
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2016
    Messaggi
    17
    edit by mod

    non si tratta che non sei chiaro si tratta che non leggi quello che ti si dice

    http://forum.html.it/forum/showthrea...hreadid=125610

    http://forum.html.it/forum/showthrea...=1#post4313962
    Ultima modifica di ciro78; 08-05-2016 a 22:36 Motivo: edit by mod - copia incolla dello stesso codice senza tag code

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2016
    Messaggi
    17
    questa è la funzione dove x si incrementa fino a 12 per poi visualizzare il messaggio di vittoria
    codice:
    
    
    codice:
    function win(i){
    [I]document.getElementById("win").innerHTML= ++i;
    if(i==12)
    {
    alert("Hai ViNtO!!")
    document.location.reload();
    }
    }


    questo è uno dei btn corrispondenti alle posizioni giuste
    codice HTML:
    <div class="divor"id="win1"><button class="butt"  onclick='document.getElementById("win1").style.display="none";win(i);'>?</button></div>
    il mio problema è che la variabile x non si incrementa ad ogni click ma ad un solo click

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Rendi X globale (fuori dalla funzione) e togli quella [i] inutile
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2016
    Messaggi
    17
    grazie tante

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.