Javascript 为什么单击div时会触发focusout事件

Javascript 为什么单击div时会触发focusout事件,javascript,jquery,onfocus,focusout,Javascript,Jquery,Onfocus,Focusout,我有一个div用作文本框 <div class="field-wrapper"> Name <div id="name" class="name" tabindex="-1"> Enter a name </div> 但是,每当我单击div时,focus和focusout事件都会被触发。为什么会这样?您的代码似乎工作正常。这里是小提琴,假设您将其包装在某种dom ready中: $(function(){

我有一个div用作文本框

<div class="field-wrapper">
     Name
     <div id="name" class="name" tabindex="-1">
         Enter a name
     </div>

但是,每当我单击div时,
focus
focusout
事件都会被触发。为什么会这样?

您的代码似乎工作正常。这里是小提琴,假设您将其包装在某种dom ready中:

$(function(){
   $('.name').focus(function() {
    console.log("focused")
   });

  $('.name').focusout(function() {
    console.log("unfocused");
  });
});

一旦我禁用了应用于div元素的表,问题就消失了。因此,当元素被聚焦时,jEditable似乎以某种方式调用了
focusout
事件


话虽如此,我使用
focus
focusout
的主要目的是捕获用户输入的任何更改,我应该使用jeditable的函数来完成这些更改。

尝试模糊而不是focusout问题仍然存在。当元素失去焦点时,不会触发模糊。
$(function(){
   $('.name').focus(function() {
    console.log("focused")
   });

  $('.name').focusout(function() {
    console.log("unfocused");
  });
});