我设置了具有以下特征的代码:
导航项目 - 文本 - 隐藏在一些Divs后面,我称之为导航分区
当鼠标移动到某些像素 - 导航Divs-时,它们背后的文本,左右滑动,在某些情况下,其中一些移动顶部和底部约15 px with animate( )方法......
当鼠标移动到另一个Div时,其他文本将重置为第一个位置 对于下一个动作,我这样做:
$(document).on('mouseover', '.pixel#p18', function(){
$('.submenus').not("this Div's TEXT").fadeOut('fast').removeAttr('style');
});/* this Div's Text is for Example*/
我为所有导航文本写了这个..
现在我的问题是:
当我将鼠标悬停在其中一个导航Div上时,由于removeAttr('style'),一些他们没有动画的文本变得可见!但我不希望这样......
有没有其他方法可以将文本或其他元素向左,向右,向上和向下滑动,并带有可选的移动值... ???例如23px到左边或17px到顶部...等等??? - 我很喜欢使用slideUp和Down并切换但不确定它们对我的代码是否足够好......
你有没有更好的想法---你真的会因为我觉得这很糟糕
最后一个问题是为什么我的代码运行速度很慢?我写的动画有些时候已经懒散了,我不确定问题是我的选择器或其他东西。
答案 0 :(得分:0)
为此你需要像.animate那样有回调的东西。如下所示:
$('.submenus').not("this Div's TEXT").animate({opacity:0},500,'linear', function() {
$(this).removeAttr('style');
});
这只会在动画完成时删除属性。