показать-скрыть изображение - PullRequest
1 голос
/ 18 апреля 2010

У меня есть 3 изображения друг на друга. Первый - нормальное изображение .jpg, второй - в оттенках серого, а третий - какой-то эффект, который я добавляю с прозрачным .png

Теперь я хочу, чтобы при наведении мыши на эти изображения серое изображение скрывалось или заменялось другим, а затем снова становилось видимым.

Проблема здесь в том, что я js noob, поэтому мне трудно найти решение ^^

мой код выглядит примерно так:

<html> 
<head>
<style type="text/css">
<!--                                               
ul li{                     
  display: inline-table;
}
.frame{
  position: relative;  
  height: 110px;
  width: 110px;
}  
.frame div{
  position: absolute;
  top:0px;
  left:0px;              
}       
.effect{                                           
  background:url(images/effect.png) no-repeat;
  height:110px;
  width: 110px; 
}  
.image{
  height:100px;
  width:100px;
  border: 1px solid red;
  margin:4px;    
}
.greyscale{ 
  height:100px;
  width:100px;
  border: 1px solid red;
  margin:4px;          
}    
-->
</style>
</head>

<body>
<ul>
  <li>
    <div class="frame">
      <div class="image"><img src="images/pic1.jpg" height="100" width="100"></div>      
      <div class="greyscale"><img src="images/grey1.jpg" height="100" width="100"></div>
      <div class="effect">qwert</div>
    </div>
  </li> 
  <li>
    <div class="frame">
      <div class="image"><img src="images/pic2.jpg" height="100" width="100"></div>
      <div class="greyscale"><img src="images/grey2.jpg" height="100" width="100"></div>
      <div class="effect">qewrt</div>
    </div>
  </li> 
</ul>

</body>
</html>

было бы супер-круто, если бы кто-нибудь мне помог:)

Ответы [ 3 ]

3 голосов
/ 18 апреля 2010

Попробуйте это:

.frame:hover .greyscale { display: none; }
1 голос
/ 05 марта 2012

Посмотрите на этот пример,

Здесь у меня есть большое изображение сверху и 3 изображения ниже.

При наведении мыши на 3 изображения они заменят большие. при наведении мыши старое изображение вернется

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title><br />

</head>

<body>
<p>
  <script type="text/javascript" language="javascript">
function changeImage(img){
   document.getElementById('bigImage').src=img;

}
</script>

  <img src="../Pictures/Bigcircle.png" alt="" width="284" height="156" id="bigImage" />
<p>&nbsp; </p>
<div>
  <p>
  <img src="../Pictures/lightcircle1.png" height=79 width=78 onmouseover="changeImage('../Pictures/lightcircle2.png')" onmouseout="changeImage('../Pictures/Bigcircle.png')"/>

 </p>
 <p><img src="../Pictures/lightcircle2.png" alt="" width="120" height="100" onmouseover="changeImage('../Pictures/lightcircle.png')" onmouseout="changeImage('../Pictures/Bigcircle.png')"/></p>

 <p><img src="../Pictures/lightcircle3.png" alt="" width="78" height="79" onmouseover="changeImage('../Pictures/lightcircle2.png')" onmouseout="changeImage('../Pictures/Bigcircle.png')"/></p>

 <p>&nbsp;</p>


  </br>
</div>
</body>
</html>

Вы можете изменить его так, как вам нужно. Приветствия ..

1 голос
/ 18 апреля 2010

Попробуйте добавить это к вашему css:

div.greyscale:hover img { display: none; }

Это скроет ваше изображение, если вы наведете курсор на шкалу серого.

...