Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    158

    Problema javascript CSS MOZILLA

    Ciao a tutti!
    Ho una funzione (che posto qui sotto) per assegnare un gradiente ad un div. Con safari funziona benissimo, mentre con mozilla non visualizzo il gradiente, ma lo sfondo bianco/trasparente. Mi sembra strano perchè la proprieta CSS è praticamente la stessa, cambia solamente il prefisso -moz- al posto di -webkit-.
    Qualcuno saprebbe dirmi qual'è il problema? magari c'è un errore banale che non riconosco...

    P.S Ho l'ultima versione di mozilla.

    Grazie a tutti in anticipo

    codice:
    function colora(){
    
    <script>
    
        var partenza = document.getElementById('partenza').options[document.getElementById('partenza').selectedIndex].value;
        var numero_colori = document.getElementById('numero_colori').value;
        
        var css = "";
        
        for (k=1; k<=numero_colori; k++){
            
            var id = "colore"+k;    
            var per ="percentuale"+k;
            
            var colore = document.getElementById(""+id+"").value;
            var percentuale = document.getElementById(""+per+"").value;
            
            css = css + colore + " " + percentuale + "%,";
            
        }
        
        // elimina l'ultima virgola dalla variabile css
    
        var len = css.length
    
        css = css.substring(0,len-1)
        
        
        // creo la regola css per il cambio del gradiente
        var cambia_gradiente = "-webkit-linear-gradient("+partenza+","+css+")";
        var cambia_gradiente_moz = "-moz-linear-gradient("+partenza+","+css+")";
        
        document.getElementById('prova').style.backgroundImage= cambia_gradiente;
        document.getElementById('prova').style.backgroundImage= cambia_gradiente_moz;
        
    }
    </script>

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Mettilo anche senza prefisso
    No

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    158
    nnt da fare... anche senza prefisso non visualizzo il gradiente... è strano perché se inserisco un banale div nella pagina come questo:

    codice HTML:
    <div class="col-xs-3" style="background-image: -moz-linear-gradient(bottom, #8E45C8 0%, #63F0E4 100%);height:200px;">
    con lo stesso mozilla lo visualizzo tranquillamente...

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    158
    Se può essere d'aiuto la funzione è chiamata attraverso un evento onchange...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    158
    RISOLTO! Spiego la soluzione...

    Quando prendo ed inserisco il valore del colore nella variabile "colore" esso viene salvato in codice esadecimale (es. FFFFFF).
    Browser come Safari riconosco il colore tranquillamente, mentre ad esempio Firefox richiede anche il cancelletto posto davanti per interpretarlo correttamente (es. #FFFFFF).

    Con l'inserimento del cancelletto (#) si risolve il problema con qualsiasi browser.

    Grazie comunque!

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.