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?
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!