Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Prezados,
boa tarde. Estou tentando fazer um javascript para alterar imagem ao clicar. Qdo o click é efetuado, a imagem é alterada, porém não estou conseguindo mudar no 2º click.
Veja exemplo abaixo:
<script>
function add_favoritos(valor){
var favoritos1 = document.getElementById("favoritos");
alert(favoritos1.src);
if (favoritos1.src='arquivos/add_favoritos.png'){
favoritos1.src='arquivos/add_favoritos1.png';
}else{
favoritos1.src='arquivos/add_favoritos.png';
}
alert(favoritos1.src);
}
</script>
<a>
<img height="30" src="arquivos/add_favoritos.png" name="favoritos" id="favoritos" border="0" onclick="add_favoritos('1')" alt="Adicionar aos Favoritos" title="Adicionar aos Favoritos"/></a>
Agora tem um outro caso, que ao trabalhar com o evento onmouseover e onmouseout , a imagem alterar com o passar do mouse, mas não muda com o click.
function add_favoritos(valor){
var favoritos1 = document.getElementById("favoritos");
alert(favoritos1.src);
if (favoritos1.src='arquivos/add_favoritos1.png'){
favoritos1.src='arquivos/add_favoritos.png';
}else{
favoritos1.src='arquivos/add_favoritos1.png';
}
alert(favoritos1.src);
}
<a onmouseover="document.favoritos.src='arquivos/add_favoritos1.png'" onmouseout="document.favoritos.src='arquivos/add_favoritos.png'">
<img height="30" src="arquivos/add_favoritos.png" name="favoritos" id="favoritos" border="0" onclick="add_favoritos('1')" alt="Adicionar aos Favoritos" title="Adicionar aos Favoritos"/></a>
Alguém pode me dar uma luz onde estou errando?Olá @marsolim obrigado pela atenção.
aquele valor "fixo" seria o id do produto que estarei gravando no bd.
A minha intenção seria igual ao favoritos do MercadoLivre. Ao passar o mouse, ele muda de imagem e qdo clicar ele deixa "marcado" como produto favorito.
Sim, as duas imagens possuem os seguintes nomes:
add_favoritos.png (imagem padrão, qdo o produto ainda não foi marcado com favoritos)
add_favoritos1.png (imagem qdo o produto marcado como favoritos)
Não sei se ficou bem claro.
Olá @marsolim,
estou retornando, pois consegui resolver. Tinha um erro no IF.
Segue correção, para se outros precisarem
<script>
function add_favoritos(valor){
var favoritos1 = document.getElementById("favoritos");
alert(favoritos1.src);
if (favoritos1.src=='arquivos/add_favoritos.png'){
favoritos1.src='arquivos/add_favoritos1.png';
}else{
favoritos1.src='arquivos/add_favoritos.png';
}
alert(favoritos1.src);
}
</script>
<a>
<img height="30" src="arquivos/add_favoritos.png" name="favoritos" id="favoritos" border="0" onclick="add_favoritos('1')" alt="Adicionar aos Favoritos" title="Adicionar aos Favoritos"/></a>
não muda porque tu estás a passar um valor fixo no click('1'). explica melhor o que precisa, que imagens são, de onde vem, se tem nomes padronizados tipo img1.png, img2.png e tal