0

这是我的代码:

var flag=true;
$(document).ready(function(){
    $("glavna").mouseenter(function(){
        if(flag)
        {
            $(".ocenjevanje").animate({right:"+=440", bottom:"+=20"},1000);
            $(".svetovanje").animate({right:"+=440", top:"+=140"},1000);
            $(".onas").animate({left:"+=440", top:"+160"},1000);
            $(".infotocka").animate({left:"+=440", bottom:"+=3"},1000);
            flag=false;
        }
    });
});

var bannana=true;
$(document).ready(function(){
    $(".glavna").click(function(){
        if(bannana)
        {
            $(".ocenjevanje").animate({right:"-=440", bottom:"-=200"},1000);
            $(".svetovanje").animate({right:"-=440", top:"-=140"},1000);
            $(".onas").animate({left:"-=440", top:"-=150"},1000);
            $(".infotocka").animate({left:"-=440", bottom:"-190"},1000);
            bannana=false;
        }
    });
});

这会将我在页面中间的卡片移动到一边,将鼠标悬停在主卡片上并在点击时返回它们。但问题是我只能这样做一次(只有一次悬停并单击......之后它什么也不做)。我怎样才能制作代码,以便我能够重复此操作?我怎样才能在所有屏幕尺寸上熟练使用 jQuery,所以无论它的尺寸如何,卡片都将始终位于屏幕的角落?最后一件事,进入顶部的卡片会无缘无故地产生一些不同的动画。它们不会像底部的卡片那样从起始位置移动,而是在对角线动画之前稍微向上移动。我该如何解决?如果需要,这里是完整代码(带有 css 和 html):http: //jsfiddle.net/kkdpw/

4

1 回答 1

1

你需要在事件发生后将标志和香蕉改回真/假..

var flag=true;
$(document).ready(function(){
$(".glavna").mouseenter(function(){
  if(flag)
  {
     $(".ocenjevanje").animate({right:"+=440", bottom:"+=20"},1000);
     $(".svetovanje").animate({right:"+=440", top:"+=140"},1000);
     $(".onas").animate({left:"+=440", top:"+160"},1000);
     $(".infotocka").animate({left:"+=440", bottom:"+=3"},1000);
     flag=false;
      bannana = true;
  }

});
});

var bannana=true;
$(document).ready(function(){
$(".glavna").click(function(){
  if(bannana)
  {
     $(".ocenjevanje").animate({right:"-=440", bottom:"-=200"},1000);
     $(".svetovanje").animate({right:"-=440", top:"-=140"},1000);
     $(".onas").animate({left:"-=440", top:"-=150"},1000);
     $(".infotocka").animate({left:"-=440", bottom:"-190"},1000);
     bannana=false;
      flag = true;
  }

});
});

在这里摆弄

于 2013-04-22T07:10:52.803 回答