javascript - 我无法编写一个开关来显示和隐藏元素?

标签 javascript jquery hide show

我想用以下代码编写一个开关来隐藏和显示元素:

.hidden {
display:none;
}

<input type='text' id='other_elem' class='hidden' />

$('#elem').click(function(){
    if($('#other_elem').is('display'))
        $('#other_elem').hide();
    else 
        $('#other_elem').show();

});

当我单击按钮时,我成功显示了隐藏的文本字段,但当它出现时我无法隐藏它。那么,有人可以给我一些提示吗?谢谢!

最佳答案

您可以使用.toggle()来做到这一点。

$('#elem').click(function(){
    $('#other_elem').toggle();
});

否则,要测试可见性,请使用 :visible 选择器

$('#elem').click(function(){
    if($('#other_elem').is(':visible'))
        $('#other_elem').hide();
    else 
        $('#other_elem').show();
});

关于javascript - 我无法编写一个开关来显示和隐藏元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18691274/

相关文章:

javascript - jQuery JSON 数据库变量在 Javascript 中的应用

javascript - 检查对象是否超出 Canvas (Raphael.js)

javascript - 使用 cookie 更改 header 内容

ios - 隐藏/删除键盘上的按钮

html - 如何在标题中制作固定菜单,在移动浏览器中显示在标题和内容之上

javascript - 使用 Angular 为简单 slider 进行数据绑定(bind)

javascript - 使用 jQuery 设置单选按钮的值

javascript - 具有巨大 dom 的浏览器行为

javascript - 如何在 Jquery Chosen 插件中搜索乌尔都语?还有其他方法可以在 Selectbox 中搜索乌尔都语吗?

ios - 如何在 iPhone 6 设备的 iOS 8.2 中隐藏状态栏?