jQuery animate не работает в chrome / safari / ie - PullRequest
0 голосов
/ 16 сентября 2010

Я написал несколько строк 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 ]

3 голосов
/ 01 июля 2011

У меня была именно эта проблема ... div, который я анимировал, имел position:absolute. Для меня это установило top и left в css. Как только я добавил их в бинго, все заработало!

0 голосов
/ 16 сентября 2010

Для меня это нормально работает с jQuery 1.4.2 + UI 8. Проверьте свой CSS.

0 голосов
/ 16 сентября 2010

Работает нормально в хроме 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});
      }
    });
})  
​
...