Jquery 战场3标志效果

Jquery 战场3标志效果,jquery,css,image,Jquery,Css,Image,对于那些有战地3,请有人向我解释如何重新创造的效果,使标志'微光'。我知道图像有3种状态(鼠标移出、悬停和鼠标移入),但我不知道如何使其闪烁 通过登录BF3战车日志并将鼠标移到徽标上,可以看到徽标的效果 有人知道吗?这里没有魔法,它只是在你悬停时切换图像。如果您在悬停徽标时检查DOM,您将看到背景位置如何从0跳到0~-100px,最后跳到0~-50px,使用此图像,它首先跳到最后一个“闪烁”位置,然后跳到中间位置 编辑:要实现这一点,您可以说: $('#logo').hover(function

对于那些有战地3,请有人向我解释如何重新创造的效果,使标志'微光'。我知道图像有3种状态(鼠标移出、悬停和鼠标移入),但我不知道如何使其闪烁

通过登录BF3战车日志并将鼠标移到徽标上,可以看到徽标的效果


有人知道吗?

这里没有魔法,它只是在你悬停时切换图像。如果您在悬停徽标时检查DOM,您将看到背景位置如何从0跳到0~-100px,最后跳到0~-50px,使用此图像,它首先跳到最后一个“闪烁”位置,然后跳到中间位置

编辑:要实现这一点,您可以说:

$('#logo').hover(function () {
    var logo = $(this);

    logo.css('background-position', '0 -100px');

    setTimeout(function () {
        logo.css('background-position', '0 -50px');
    }, 5);
}, function () {
    $(this).css('background-position', '0 0');
});

Edit2:您甚至不需要设置超时。

这里没有魔法,它只是在您悬停时切换图像。如果您在悬停徽标时检查DOM,您将看到背景位置如何从0跳到0~-100px,最后跳到0~-50px,使用此图像,它首先跳到最后一个“闪烁”位置,然后跳到中间位置

编辑:要实现这一点,您可以说:

$('#logo').hover(function () {
    var logo = $(this);

    logo.css('background-position', '0 -100px');

    setTimeout(function () {
        logo.css('background-position', '0 -50px');
    }, 5);
}, function () {
    $(this).css('background-position', '0 0');
});

Edit2:您甚至可能不需要设置超时。

您实际上回答了自己的问题:

该图像有一个鼠标出、悬停和鼠标入图像。悬停可能是一个小的gif,它一结束就被图像中的鼠标所取代。没有什么困难,可能与纯css可能

祝你好运


编辑:我的答案错了。他们使用的是一个图像,根据鼠标移动在该图像上导航。有关正确的解释,请参阅Powerbuoy的答案。

您实际上回答了自己的问题:

该图像有一个鼠标出、悬停和鼠标入图像。悬停可能是一个小的gif,它一结束就被图像中的鼠标所取代。没有什么困难,可能与纯css可能

祝你好运


编辑:我的答案错了。他们使用的是一个图像,根据鼠标移动在该图像上导航。有关正确的解释,请参阅Power浮标的答案。

这是附在图像上的事件:

var $headerLogoBF3=$("a.base-header-logo-bf3");
$headerLogoBF3.pageBind("mouseover", function() {
  try {
    $(this).stop().animate({backgroundPosition:"0px -136px"},80, function() {
      $(this).stop().animate({backgroundPosition:"0px -68px"});
    });
  } catch(e){}
});
$headerLogoBF3.pageBind("mouseout",function( {
  try{
    $(this).stop().animate({backgroundPosition:"0px 0px"},"slow");
  } catch(e){}
});

这是附加到图像的事件:

var $headerLogoBF3=$("a.base-header-logo-bf3");
$headerLogoBF3.pageBind("mouseover", function() {
  try {
    $(this).stop().animate({backgroundPosition:"0px -136px"},80, function() {
      $(this).stop().animate({backgroundPosition:"0px -68px"});
    });
  } catch(e){}
});
$headerLogoBF3.pageBind("mouseout",function( {
  try{
    $(this).stop().animate({backgroundPosition:"0px 0px"},"slow");
  } catch(e){}
});

页面上加载了哪些jQuery库?使用FireBug进行查看(net选项卡),它应该提供一个提示。使用Chrome的Inspect元素(scripts选项卡),它似乎都是自制的库。这是一个mouseenter事件和一个sprite-只需在sprites和jquery mouseenter上进行一些谷歌搜索,您就可以轻松地做到这一点。页面上加载了哪些jquery库?使用FireBug进行查看(net选项卡),它应该提供一个提示。使用Chrome的Inspect元素(scripts选项卡),它似乎都是自制的库。这是一个mouseenter事件和一个sprite-只需在sprites和jquery mouseenter上进行一些谷歌搜索,您就可以轻松地完成此操作。但在鼠标悬停时,没有停顿,因此您不会看到效果(因为变化太快了).我是对的还是遗漏了什么?我想的是在javascript中使用setTimeout函数,间隔为100毫秒。你认为这样行吗?我确实错了。显然,他们使用一个图像,在其中查看图像的不同部分。PowerBuulg的帖子中有该图像。我还发布了我在最初的帖子中有该图像。编辑:Well、 重读它,我看到我说它有3个图像。从来没有提到我有它。我的坏!但在鼠标上方,没有暂停,所以你不会看到效果(因为更改太快).我是对的还是遗漏了什么?我想的是在javascript中使用setTimeout函数,间隔为100毫秒。你认为这样行吗?我确实错了。显然,他们使用一个图像,在其中查看图像的不同部分。PowerBuulg的帖子中有该图像。我还发布了我在最初的帖子中有该图像。编辑:Well、 重读它,我看到我说它有3张图片。从来没有提到过我有它。我的坏!我注意到了。我只是想知道他们用什么来创造暂停。我注意到了。我只是想知道他们用什么来创造暂停。太棒了!我怎么没看到?太棒了!太棒了!我怎么没看到?太棒了!