Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

on mouse over change image on html

I was trying to make an image to change on mouse over. This piece of code works for IE but not for the other browsers like chrome, opera, safari, etc. Any ideas?

<a href="#" onmouseover="document.myimage1.src='img/login_button_22.jpg';"
onmouseout="document.myimage1.src='img/login_button_11.jpg';">    
<img src="img/login_button_11.jpg" name="myimage1" /> </a>
like image 863
33528 Avatar asked Jan 14 '23 22:01

33528


1 Answers

You should be using a ID, not a NAME, and using document.getElementById to select the element.

IMG elements, not being FORM elements, should not be able to take on a NAME property, but Microsoft managed to screw this up.

<a href="#" onmouseover="document.getElementById('myimage1').src='img/login_button_22.jpg';"
onmouseout="document.getElementById('myimage1').src='img/login_button_11.jpg';">    
<img src="img/login_button_11.jpg" id="myimage1" /></a>

Also, it's much easier and cleaner to use a CSS background and a :hover declaration and skip doing this using JavaScript completely.

Here's how:

HTML:

<a class="mybutton" href="#"></a>

CSS (adjust dimensions accordingly):

.myButton {
     width:100px;
     height:50px;
     display:block;
     background-image:url(../img/login_button_11.jpg);

}

.myButton:hover {
     background-image:url(../img/login_button_22.jpg)
}
like image 166
Diodeus - James MacFarlane Avatar answered Jan 17 '23 18:01

Diodeus - James MacFarlane