无法使用jquery为图像设置动画

时间:2012-01-13 19:07:07

标签: jquery animation jquery-animate

我不知道我是否遗漏了一些obvieouse但是,我认为你可以在jquery中制作动画图像?基本上我想要获得像http://jsfiddle.net/Qm2FG/这样的东西,但是在这个网站http://nagomedia.blackflow.pl上有价格标签。

1 个答案:

答案 0 :(得分:0)

您只需使用您在问题中链接的代码,但需要在HTML文档中选择适当的元素:

$('.content').children('.main').children().hover(function() {
    $(this).stop(true, true).animate({ top : "-=0.45em" }, 150);            
}, function() {
    $(this).stop(true, true).animate({ top :"+=0.45em" }, 150);
});

当我将此代码发布到您网站上的开发者控制台时,当我将鼠标悬停在它们上方时,您的代码会开始制作动画。

请注意使用.stop(),这在使用-=+=修饰符时非常有用。

<强>更新

您需要将您的JS放在HTML文档的末尾(我个人最喜欢的)或将代码放在document.ready事件处理程序中。您的代码正在尝试绑定到尚不存在的元素,因此不会发生任何绑定。

$(function () {
    $('.content').children('.main').children().hover(function() {
        $(this).stop(true, true).animate({ top : "-=0.45em" }, 150);            
    }, function() {
        $(this).stop(true, true).animate({ top :"+=0.45em" }, 150);
    });
});

我喜欢将我的JS代码放在HTML文档的末尾,这样它们就不会阻止页面的呈现。 CSS进入<head>,因此可以正确设置文档的样式,并且一旦设置了DOM,JS就会放在底部运行。