我按照这里的例子
http://www.incg.nl/blog/2008/hover-block-jquery/
这很有效。我所做的也是让它更大,并添加了背景图像。调整CSS以将悬停动画移动到背景图像中的特定点。这一切都有效,但当你将鼠标悬停在背景图像上的任何地方时都会动画。我希望它只悬停在动画图像上时悬停,或者我可以像边距一样设置吗?
JS:
$(function () {
$('ul.hover_block li').hover(function () {
$(this).find('img').animate({
top: '374px'
}, {
queue: false,
duration: 500
});
}, function () {
$(this).find('img').animate({
top: '0px'
}, {
queue: false,
duration: 500
});
});
$('ul.hover_block2 li').hover(function () {
$(this).find('img').animate({
left: '178px'
}, {
queue: false,
duration: 500
});
}, function () {
$(this).find('img').animate({
left: '0px'
}, {
queue: false,
duration: 500
});
});
});
CSS:
body {
background: #666
}
ul.hover_block {
display: block;
overflow: hidden;
height: 1%;
padding-bottom: 15px;
}
ul.hover_block li, ul.hover_block2 li {
list-style: none;
float: left;
background: #fff;
padding: 10px;
padding-left: 315px;
padding-top: 78px;
width: 500px;
position: relative;
margin-right: 20px;
background-image: url('images/2.png');
background-repeat: no-repeat;
}
ul.hover_block li a, ul.hover_block2 li a {
display: block;
position: relative;
overflow: hidden;
height: 400px;
width: 500px;
padding: 16px;
color: #000;
font: 1.6em/1.3 Helvetica, Arial, sans-serif;
}
ul.hover_block li a, ul.hover_block2 li a {
text-decoration: none
}
ul.hover_block li img, ul.hover_block2 li img {
position: absolute;
top: 0;
left: 0;
border: 0;
}
HTML:
<body>
<ul class="hover_block">
<li>
<a href=""><img src="images/3.png" alt="" /> </a>
</li>
</ul>
</body>
答案 0 :(得分:0)
我认为使用“ul.hover_block li”的选择器是指将鼠标悬停在list元素上,而不是图像。 如果你将选择器更改为引用img而不是li应该工作的东西,
看看这个:jsfiddle.net/edddotcom/eYp99 /