簡體   English   中英

為什么單擊div時觸發聚焦事件

[英]Why is focusout event triggered when clicking on div

我有一個用作文本框的div

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

我想檢測div文本框的焦點和焦點不集中事件。

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

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

但是,每當我單擊div時,都會觸發focusfocusout事件。 為什么會這樣?

您的代碼似乎運行正常。 這是小提琴,假設您將其包裝在准備就緒的dom中:

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

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

http://jsfiddle.net/BkJLn/

一旦禁用了應用於div元素的jEditable,問題就消失了。 因此,當元素被聚焦時,jEditable似乎以某種方式調用了focusout事件。

就是說,我使用focusfocusout主要目的是捕獲用戶輸入的任何更改,我應該使用jeditable的功能來完成。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM