Comment puis-je mettre ma couleur de fond grâce à HTML5 getItem?
-
27-09-2019 - |
Question
Im en utilisant ce code:
$(this).css('backgroundcolor', localStorage.getItem('bgColorr') + " !important;");
Quand j'écris:
alert( localStorage.getItem('bgColorr') + " !important;");
Il me donne l'alerte appropriée, rgb (243,102,42) important!; ....
vraiment obtenir pour moi .. Merci les gars!
edit:
Code Entourer:
$(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);
});
Il vous allez, merci les gars
La solution
- Utiliser
'background-color'
au lieu de'backgroundcolor'
. - Retirez le
!important
. Vous ne pouvez pas définir cette propriété de Javascript. - Vous ne devriez pas mettre le point-virgule à la fin de la valeur.
Mise à jour:
En plus de ce qui précède, il semble que this
n'est pas un élément HTML. Vous devez utiliser un sélecteur approprié ici, par exemple $('#someid')
pour sélectionner l'élément à id='someid'
. Si vous voulez changer l'arrière-plan du corps, l'utilisation $('body')
.
Pour résumer, vous devez être laissé avec:
$('body').css('background-color', localStorage.getItem('bgColorr'));
Autres conseils
Votre problème n'est pas getItem ou quoi que ce soit, mais la capitalisation de votre nom de la propriété CSS. Ce fond de C olor, pas backgroundcolor.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow