0

由于 jquery 的滑动切换和悬停功能,我有一个“下拉”的 div。

在那个 div 里面我有一些信息(比如日期,还有一个记事本)而且我有三个按钮。其中两个是 tumblr 按钮( {LikeButton}、{ReblogBu​​tton} ),第三个是输入符号。

我必须在他们自己的单独班级中将它们全部浮动到右侧,否则它们会重叠(tumblr 的问题,他们的点赞和转发按钮制作得不好)

我已经确定是“float:right”css 位使我的 jquery slidetoggle 下拉菜单“跳跃”。(或者更确切地说,它向下滑动,并在一毫秒内向上滑动,然后再次向下滑动,产生抖动效果)

有谁知道这可能是什么原因造成的?有谁知道在 div 的右边缘排列 3 个跨度的更好方法(text-align:right 不起作用,我已经尝试过了)

我的测试站点在这里:http ://test-theme-one.tumblr.com

如果有帮助

4

1 回答 1

1

您是指当您将鼠标悬停在它上面时,它会扩展,然后稍微缩回的事实?如果是这样,请尝试将min-height属性集添加到元素的图标大小,.notes它似乎可以防止这种抖动。

提示:我注意到如果您立即将鼠标移开,它也会抖动,因为它同时调用该方法。在动画启动时设置一个标志,以防止其他动画启动。像这样的伪代码:

//Global Flag
flag = false;
-- start function --
 //prevent animation if another animation is in progress.
 if(flag) return; 
 flag = true;
 your.animation(function(){
    //callback (when animation is done)
   flag = false; //rest flag
 });

之所以会抖动,是因为里面的元素都是浮动的,所以不影响父元素的高度,所以动画把它当成空的。但是设置最小高度或仅高度可以弥补这一点。我敢肯定它比这更复杂,但简而言之就是这样。

于 2013-07-06T06:55:37.527 回答