javascript - onClick 过渡并切换 div 元素的可见性

标签 javascript jquery html css

在这里,我想创建一个下拉表单,在单击元素时具有过渡效果,onClick 会触发过渡,但是当我再次单击时,它不会触发过渡,而只是隐藏 div 元素.... 演示:http://tryitnow.net16.net/

见下文:

功能:

<script>

$(function() {

    $("#login").click(function() {
        var visi= $(".User-Login").css('visibility');

        if(visi=="visible") {
            $(".User-Login").toggleClass("box-colap");
            $(".User-Login").css('visibility','hidden');    
        }
        else {
            $(".User-Login").css('visibility','visible');
            $(".User-Login").toggleClass("box-change"); 
        }       
    });
});

HTML:

<table class="MainMenu" style="width:100%;background-color:white" align="center">
<a href="#">Home</a>
        &nbsp;
        &nbsp;
        </td>
        <td>
        <a href="#">How It Works </a>
        </td>
        <td>
        <a href="#"> Features</a>
        </td>
        <td>
        <a href="#"> Why Us </a>
        </td>
        <td>
        <a href="#"> Sign Up </a>
        </td>
        <td>
        <a id="login" href="javascript:void(0);"> Login </a>
        </td>
</table>

CSS:

 .User-Login {  

visibility:hidden;
position:absolute;
left:1150px;    


background:black;
-webkit-transition:  height 2s ease;  
-moz-transition:  height 2s ease;  
-o-transition: height 2s ease;  
-ms-transition: height 2s ease;  
transition:, height 2s ease;  
overflow:hidden;


height:10px;

 top:90px;

}  

.box-change {   
height: 250px;  
}

.box-colap {
height:10px;
}

最佳答案

来自 css3 的两个简单解决方案,您甚至不需要 jquery

fiddle 1

fiddle 2

都使用css3

这是滑动的实际CSS代码

div{
display:block;
height:120px;
width:120px;
background:red;
}

.hideUp{
    position:relative;
    height:200px;
    width:200px;
    background:blue;
    display:block;
    -webkit-transition:all 1s ease;
    -moz-transition:all 1s ease;
}

.hideUp:focus{
    top:-200px;
}

和html

<a href="#" tabindex="-1" class="hideUp"><div><p>CLICK TO MOVE</p></div></a>

:)

关于javascript - onClick 过渡并切换 div 元素的可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19058379/

相关文章:

javascript - 循环中的表仅选择选中复选框的 td

javascript - 删除请求未持久保存在 Node js 中

javascript - 如何使用 jquery 创建弹出 onclick

javascript - 卡住 HTML 表格标题

jquery - Materialise CSS 自定义表单验证错误消息

html - CSS背景图片错误?

javascript - 如何处理/解析/读取 "multipart/mixed; boundary=batch"响应

javascript - 如何使用按钮更改 HTML 范围 slider 值?

jquery - 使用 jquery 在 div 内滚动

javascript - 动态创建 bootstrap 4 张卡片显示为一列而不是正常布局(行)