1

大家好,我正在研究 jquery 我有一个文本区域,我需要在 jquery 中选择隐藏函数的类,一旦加载,它将在我进入时显示,当我离开时它应该隐藏

这里我的代码如下:

   <script type="text/javascript">
     $(document).ready(function () {
      $('.select').mouseleave(function () {
        $('.select').hide();
      });
    });
   </script>

这是我的html:

     <textarea  rows="10"  class="select"  id="editor1"> </textarea>

在这里,我有我的 textarea 权限,我需要输入时不会触发任何功能,当我离开它应该隐藏的 textarea 时不会触发任何功能,因为我需要用类调用文本区域,所以我需要如何细化 textarea 类,任何帮助都会得到帮助,谢谢

4

2 回答 2

4
 $('.select').mouseleave(function () {
    $(this).hide();
 });

尽管您可能想尝试:

 $('.select').blur(function () {
    $(this).hide();
 });

根据您在标题中的问题

$('.select') /* This will select every single element
    that has the class "select" */

然而

$('#editor1') /* This will select ONLY the first
    element that has the id "editor1" */

在元素上的任何事件或函数调用中,$(this) 表示被调用的元素:

$(".select").blur(function(e) {
    $(this) // represents the current element losing focus
});
于 2012-11-01T14:17:48.087 回答
0

你几乎是对的;虽然 mouseleave 是鼠标悬停在它上面然后离开(因此事件名称)。

对于文本输入,您最好使用 focusout;下面的例子。

   <script>
     $(document).ready(function () {
      $('.select').on("focusout",function () {
        $(this).hide();
      });
    });    
   </script>
于 2012-11-01T14:20:29.297 回答