Domanda

Im utilizzando questo codice:

$(this).css('backgroundcolor', localStorage.getItem('bgColorr') + " !important;");

Quando scrivo:

alert( localStorage.getItem('bgColorr') + " !important;");

Mi dà l'avviso corretta, rgb (243,102,42) importante!; ....

davvero sempre a me .. grazie ragazzi!

modifica:

codice circostante:

$(function() {
    $(this).css('background-color', localStorage.getItem('bgColorr'));
});

var colorOptions = '#000, #fff, #abf7ae, #f6cbe9, #53c68f, #53c1c6, #538dc6, #c6536b'.split(', '),
    colorDivs = [],
    colorsContainer = $('#colorsContainer');

for ( var i = 0, len = colorOptions.length; i < len; i++ ) {
    var div = $('<div />').css('background', colorOptions[i])[0];
    colorDivs.push(div);
}

colorsContainer.append(colorDivs);

$('#header').hover(function() {
    colorsContainer
    .fadeIn(200)
    .children('div')
        .click(function() {
            $('body').css('background', $(this).css('backgroundColor'));
            localStorage.setItem('bgColorr', $(this).css('backgroundColor'));
        });
}, function() {
    colorsContainer.fadeOut(200);
});

Ci si va, grazie ragazzi

È stato utile?

Soluzione

  • Usa 'background-color' invece di 'backgroundcolor'.
  • Rimuovere la !important. Non è possibile impostare questa proprietà da JavaScript.
  • Non si dovrebbe mettere il punto e virgola alla fine del valore.

Aggiornamento:

In aggiunta a quanto sopra, sembra che this non è un elemento HTML. È necessario utilizzare un selettore corretta qui, ad esempio, $('#someid') per selezionare l'elemento con id='someid'. Se si desidera modificare il corpo di fondo, l'uso $('body').

Per riassumere, si dovrebbe essere lasciato con:

$('body').css('background-color', localStorage.getItem('bgColorr'));

Altri suggerimenti

Il problema non è in getItem o altro, ma la capitalizzazione della vostra CSS nome della proprietà. E 'di sfondo C olor, non backgroundcolor.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top