javascript - 如何使用 onfocus 显示和隐藏一个 div

标签 javascript html css

我对此有点陌生。到目前为止我有这个:

<style type="text/css">
#show_hide{display:none;}
</style>

<div id="show_hide">
ok
</div>

<input type="text" onfocus="document.getElementById('show_hide').style.display='block';">

当我单击输入框以显示 div 时,它起作用了。当我点击其他地方或“散焦”有什么帮助时,我是否需要它再次隐藏?谢谢!

最佳答案

因此,您的问题是您的 CSS 设置了 div 的默认状态(display:none),然后您的 JavaScript 将状态 onfocus 更改为 display: block --但是您没有任何代码可以将 div 恢复为隐藏状态。

使用纯 JavaScript,我相信您会希望 onblur 事件(焦点丢失)来处理此问题:

<input type="text" 
    onfocus="document.getElementById('show_hide').style.display='block';"
    onblur="document.getElementById('show_hide').style.display='none';">

Here it is in action, with your sample

关于javascript - 如何使用 onfocus 显示和隐藏一个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3586546/

相关文章:

javascript - 如何判断浏览器是否支持https资源

Javascript Loop 不显示超过 1 个数据实例

javascript - jquery.fn 被覆盖

php - 页面发布登录因等待 PHP 中的监听套接字而被阻止

Jquery UI - Datepicker onChangeMonthYear

javascript - 检查当前 url 是否匹配字符串

php - 我应该将表单和处理器写在同一个文件中还是将它们分开?

html - 与 _Layout 相比,在 _LoginPartial 中设置 ActionLinks 的样式

html - 斜 Angular 上的盒子阴影

html - 网站在 Windows Phone 中不滚动