嗨,我有一个关于图像翻转的问题,但这不是你想的那样。
我看过一个示例http://www.asos.com/并单击主页按钮(顶部导航最左侧)
您可以看到,当您翻转图像时,该图像保持突出显示,而其他图像变暗。
我知道这是用 jquery 完成的,但代码非常混乱。有没有人见过这个或知道怎么做?
谢谢
嗨,我有一个关于图像翻转的问题,但这不是你想的那样。
我看过一个示例http://www.asos.com/并单击主页按钮(顶部导航最左侧)
您可以看到,当您翻转图像时,该图像保持突出显示,而其他图像变暗。
我知道这是用 jquery 完成的,但代码非常混乱。有没有人见过这个或知道怎么做?
谢谢
首先:Firebug 是你的朋友。所采用的技术比人们想象的要简单:它们只是将图像的不透明度降低到 0.3。由于背景是黑色的,因此图像显得较暗。所以代码可能看起来像这样:
$('img.fade').live('mouseover', function (e) {
var $this = $(this).fadeTo(500, 1.0);
$('img.fade').not($this).fadeTo(500, .3);
);
$('img.fade').live('mouseout', function (e) {
var $this = $(this);
$('img.fade').not($this).fadeTo(500, 1.0);
);
快速解决方案(我猜它可以调整得更短):
<div class="images">
<img src="http://www.google.com/google.jpg" />
<img src="http://www.google.com/google.jpg" />
<img src="http://www.google.com/google.jpg" />
<img src="http://www.google.com/google.jpg" />
</div>
<script type="text/javascript">
$().ready(function(){
$('.images img').hover(
function(){
$(this).parents('.images').find('img').not(this).animate({"opacity": "0.3"}, 200);
$(this).animate({"opacity": "1"}, 200);
},
function(){
$(this).animate({"opacity": "1"}, 200);
}
);
$('.images').bind('mouseleave',function(){$(this).find('img').animate({"opacity": "1"}, 200);});
});