图像放大悬停和clearQueue

时间:2012-09-09 20:03:42

标签: jquery effects

我遇到了以下问题,除了一件事之外,这几乎是我所需要的。

image enlarge on hover with content inside div box attached to image

最佳答案示例: http://demo.superdit.com/jquery/zoom_hover/

当我正在鼠标悬停然后非常快地鼠标移动几次时,动画会在鼠标移出后继续播放几次。

动画如何在鼠标输出后只播放一次而没有锯齿状的动作?

感谢。

1 个答案:

答案 0 :(得分:1)

以下是working code

$(document).ready(function() {
  var cont_left = $("#container").position().left;
  $("a img").each(function() {
    var $this = $(this);
    var left = $this.position().left, top = $this.position().top;
    $(this).hover(function() {
      // hover in
      $(this).parent().parent().css("z-index", 1);
      $(this).stop().animate({
        height: "250",
        width: "250",
        left: left - 50,
        top: top - 50
      }, "fast");
    }, function() {
      // hover out
      $(this).parent().parent().css("z-index", 0);
      $(this).stop().animate({
        height: "150",
        width: "150",
        left: left,
        top: top
      }, "fast");
    });
  });

  $(".img").each(function(index) {
    var left = (index * 160) + cont_left;
    $(this).css("left", left + "px");
  });
});​

所做的更改:

  • 添加了.stop()
  • 修复了动画的定位,使其强制使用.stop()(使其可以停止。)