Jquery:如何设置隐藏元素以在另一个元素处于焦点时显示?

标签 jquery css forms visibility

我试图在表单字段旁边显示上下文帮助,只有当这些字段处于焦点或悬停时才可见。我试过仅使用 CSS,但结果似乎非常脆弱且不一致。

这是我的 CSS:

form .instruct {
    position: absolute;
    right: -220px;
    top: 10px;
    visibility: hidden;
    width: 200px;
    z-index: 1000;
}
form li:focus .instruct, form li:hover .instruct {
    visibility: visible;
}

在我的标记中,我使用有序列表为我的表单提供了一些结构,将每个字段及其在 li 元素中的说明分组:

<form>
    <ol>
        [...]
        <li>
                <label for="message">Message</label>
                <textarea id="message" name="message"></textarea>
                <div class="instruct">
                    <p>Instructional text and <a href="#">Formating help.</a></p>
                </div>
        </li>
        [...]

将鼠标悬停在该字段上时会出现说明,但不会在该字段处于焦点时出现 - 如果鼠标移动以选择上下文说明中的链接,它们就会消失。

每个字段都有自己的说明,我需要每个字段在相应字段处于焦点或悬停状态时出现。

我认为这可能是 jquery 可以让生活更轻松的一个例子。有没有快速的方法来完成这个?如果有一种可靠的方式使用原始 CSS 来做到这一点,我也会很高兴。

谢谢!

最佳答案

更新为 blur event为你

   $(function()
   {
        $('.instruct').hide(); //hide 
        $('#message').focus(function(){  
            $('.instruct').show(); //show
        }).blur(function(){  
            $('.instruct').hide(); //hide again
        });

  });   

关于Jquery:如何设置隐藏元素以在另一个元素处于焦点时显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/780375/

相关文章:

jquery - ScrollTop 动画 jquery

javascript - 如何获取点击控件的所有html内容?

css - 导航栏样式事件下划线

html - 折叠一个div后,获得另一个div的全宽

php - 如何在提交后重新填充动态生成的表单选择字段?

php - Drupal 表单重定向到片段

c# - 在 asp.net mvc 3 和 jquery 中记录帖子

javascript - 我正在尝试为复选框分配一个变量,并在选中时将该变量添加到输出变量

javascript - 这个 jQuery 的 JavaScript 等价物是什么?

html - 如何设置 symfony2 表单按钮的样式