【发布时间】:2011-11-18 12:48:10
【问题描述】:
我有一个这样的列表:
<ul>
<li><a href="#"><img src="/userfiles/test.png" alt="" /></a></li>
<li><a href="#"><img src="/userfiles/test2.png" alt="" /></a></li>
</ul>
每张图片的宽度为 950 像素,高度为 600 像素。
前 300 像素的高度是鼠标移出图像,最后 300 像素是我想要淡出的鼠标悬停图像。这可能吗?
我有这个 CSS 来控制要显示的图像:
ul { list-style: none; padding: 0; margin: 0; }
ul li { width: 950px; height: 300px; overflow: hidden; position: relative; }
ul li img {
display: block;
position: absolute;
top: 0;
left: 0;
}
此代码只是将图像的最后 300 个像素向上移动,但我不想移动它,而是希望将图像不透明地淡入“其他”:。
<script type="text/javascript">
$(document).ready(function () {
$("ul li img").mouseover(function () {
$(this).stop().animate(
{ top: "-300px" },
{ duration: 300 })
})
.mouseout(function () {
$(this).stop().animate(
{ top: "0" },
{ duration: 300 })
})
});
</script>
【问题讨论】:
-
我不完全理解你的问题。您是否正在寻找一些取决于鼠标位置的不透明度功能?
-
是的,我想在悬停时将图像的最后 300 像素淡化。
-
您只想将顶部图像淡入底部吗?鼠标悬停底部图片时应该怎么做?
-
我需要在“顶部”图像(前 300 像素)上淡入“底部”图像(最后 300 像素),当我将鼠标移出时,它应该在“顶部”图像顶部淡出。
-
我不确定你想要达到什么目标,比如:jsfiddle.net/v73AG/16
标签: jquery image mouseover fade