2015-12-21 98 views
0

我使用此代码http://jsbin.com/uninug/3/edit?html,css,js,output来做拇指滑块。当鼠标滚动滚动拇指div的原始大拇指位置div

当鼠标“离开”(不悬停)容器的拇指div,但我不知道很多JavaScript(我是初学者)时,我想重置内部拇指div位置到其原始位置。我试着这个代码,但它什么都不做:

$bl.mouseleave (function() { 
     $th.css({marginLeft: 0 }); 
    }); 

欢迎任何线索,教程或帮助。 谢谢!

回答

0

您所指脚本中的函数具有一个超时函数,它不断要求当前位置(在局部变量中给出),并基于此计算正确的偏移和边距。因此,你当前的JavaScript不起作用 - 因为它会被超时函数推翻,它会查看当前位置的局部变量。因此,您必须将位置重置为0

通过添加功能是这样的:

$bl.mouseleave(function(e) { 
    mX = 0; 
    mX2 = 0; 
}); 

http://jsbin.com/mecofesito/1/edit?html,css,js,output

+0

非常感谢@Dimser你的代码的伟大工程,您的解释帮助了我这么多理解你做什么,会发生什么。我没有声望评价SOF,但你的答案解决了代码。谢谢! – bluufoox

+0

@bluufoox您不仅欢迎您 - 欢迎来到Stackoverflow。 (注意你有自己的用户名)这是一个真正的地方,可以帮助你在发展的不同方面变得有知识。祝你好运。 – Dimser