javascript - 如果再次单击按钮,如何将动画返回到原始状态?

标签 javascript jquery html css animation

现在这可能是一个有点愚蠢的问题(可能是),但我就是无法理解它。所以我有一个水平和垂直居中的导航栏,里面有一个按钮。如果您单击该按钮,导航栏将以动画方式移动到页面顶部,并留有一点边距。我想要实现的是,当再次单击该按钮时,导航栏将动画回到其原始位置。我已经尝试了很多行代码,但我仍然无法正确处理(甚至不应该那么难)。感谢您的帮助。

JavaScript:

$("#btn").click( function(event){
    $("#wrapper").animate({
        'top': 100
    }, 400) 
});

CSS:

#wrapper {
    position:absolute;
    top:50%;
    margin-top:-100px;
    left:0;
    width:100%;
}

#nav {
    margin:20px auto;
    height:200px;
    width:900px;
    text-align:center;
    background-color:#bca;
    border:1px solid green;
}

JSFiddle here.

最佳答案

你可以使用类似的东西:

DEMO jsFiddle

$("#btn").click( function(event){
    this.toggle = !this.toggle;
    $("#wrapper").stop().animate({
        'top': this.toggle?100:"50%"
    }, 400)
});

关于javascript - 如果再次单击按钮,如何将动画返回到原始状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22667116/

相关文章:

javascript - 在 HTML 表格中显示各种图像

javascript - 如何跨应用程序的多个组件维护一个 js 文件而不出现任何错误

javascript - 当 3 个项目可见时,如何在过渡前定位 Caroufredsel 中即将到来的幻灯片

javascript - 透明 src 以便背景显示

css - HTML、CSS : Why does my layout mess up on different resolutions?

javascript - 如何在 android 的 Webview 中使用 Javascript 加载 HTML 代码

javascript - ASP.NET WebForms - 同时执行 JavaScript 验证和验证控制

jquery - 访问被拒绝 IE : form. Submit() 文件上传 jquery 插件

javascript - 使函数影响另一个页面中的元素

html - Mac OS X命令行终端下sed的使用