[quote=Thiago Siqueira]Pessoal, estou fazendo um menu simples com css e javascript
Gostaria de que quando a pessoa passar o mouse sobre o item, além de descer os subitens, o fundo mudar de cor.
A parte de fazer descer os subitens está funcionando perfeitamente, só não estou conseguindo é mudar o fundo do menu :S
onmouseover=function() {this.getElementsByTagName('ul')[0].style.display="block";this.style.backgroundColor = "#dbdbf2";this.style.background = "background-image: none"}
como posso fazer isso?[/quote]
Olá, Thiago Siqueira,
Talvez você já tenha solucionado seu problema com jQuery, mas, ainda assim, respondo sua pergunta utilizando javascript puro.
Primeiro, você precisa saber como funciona o background na CSS 2.1, para então, mexer corretamente nele. O background é composto pelas seguintes propriedades:
background-color
background-image
background-repeat
background-attachment
background-position
Para maiores esclarecimentos, segue o link: http://www.w3schools.com/css/css_background.asp
No código que você declarou, você setou a propriedade “backgroundColor” e logo em seguida, setou a propriedade “background”. Assim, você acabou de descartar a cor inserida anteriormente, pois, a propriedade “background” existe para você declarar de uma vez só, todas as propriedades referentes a background. Como segue abaixo, exemplo:
this.style.background = “#FFFFFF url(’/img/photo.gif’) left top repeat-x”;
Sendo assim, se fizesse a sua declaração como segue abaixo, funcionaria.
Espero ter ajudado.
Abraço!