jQuery动画不在chrome / safari / ie中工作

时间:2010-09-16 13:54:49

标签: jquery internet-explorer safari margin jquery-animate

我已经编写了几行jQuery来根据鼠标移动动画显示左/右的div

 $(".galleryNav").mousemove(function(e){
  $("#status").html(e.pageX +', '+e.pageY);

  if(e.pageX > 1100 && e.pageX < 1170){
   $(".galleryNav").animate({marginLeft:"-60px"},{queue: false, duration: 450});
  }

  if(e.pageX > 410 && e.pageX < 465){
   $(".galleryNav").animate({marginLeft:"10px"},{queue: false, duration: 450});
  }
 });

它在firefox中工作正常,但在chrome,safari或IE中没有任何反应。

有什么建议吗?

3 个答案:

答案 0 :(得分:3)

我确实遇到了这个问题...我动画的divposition:absolute。为我修复的是在css中设置topleft。一旦我添加它们bingo就可以了!

答案 1 :(得分:0)

在Chrome http://jsfiddle.net/x9eZY/中工作正常可能问题出在其他地方?你有没有把你的脚本封装在$(function(){})中,如下所示:

$(function(){
    $(".galleryNav").mousemove(function(e){
      $("#status").html(e.pageX +', '+e.pageY);

      if(e.pageX > 1100 && e.pageX < 1170){
       $(".galleryNav").animate({marginLeft:"-60px"},{queue: false, duration: 450});
      }

      if(e.pageX > 410 && e.pageX < 465){
       $(".galleryNav").animate({marginLeft:"10px"},{queue: false, duration: 450});
      }
    });
})  
​

答案 2 :(得分:0)

对我来说,它适用于jQuery 1.4.2 + UI 8。 检查CSS。