Como posso definir minha cor de fundo através do html5 getItem?
-
27-09-2019 - |
Pergunta
Estou usando este código:
$(this).css('backgroundcolor', localStorage.getItem('bgColorr') + " !important;");
Quando escrevo:
alert( localStorage.getItem('bgColorr') + " !important;");
Isso me dá o alerta adequado, RGB (243,102,42)! IMPORTANTE; ....
Realmente chegando a mim .. obrigado pessoal!
editar:
Código circundante:
$(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);
});
Lá está você, obrigado pessoal
Solução
- Usar
'background-color'
ao invés de'backgroundcolor'
. - Remova o
!important
. Você não pode definir esta propriedade do JavaScript. - Você não deve colocar o semicolon no final do valor.
Atualizar:
Além do exposto, parece que this
não é um elemento HTML. Você precisa usar um seletor adequado aqui, por exemplo $('#someid')
Para selecionar o elemento com id='someid'
. Se você quiser alterar o fundo do corpo, use $('body')
.
Para resumir, você deve ficar com:
$('body').css('background-color', localStorage.getItem('bgColorr'));
Outras dicas
Seu problema não está no GetItem nem nada, mas a capitalização do nome da propriedade CSS. É fundoCOlor, não BackgroundColor.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow