2015-02-11 59 views
0

我有一個輸入框,我正在使用jEditable(jQuery)內聯編輯,但由於不幸的情況,當我在輸入框外單擊時,它不會失去焦點,因此我執行下面的代碼來解決這個問題。輸入框由於廣泛的目標而失去焦點

$('section').mousedown(function() { 
    document.activeElement.blur(); 
}); 

這對我有(點擊輸入框外的時候不要失去焦點)問題工作正常,但是當涉及到點擊我的輸入框,它着重細,然後失去瞬間的重點,因此它不允許我在輸入框中選擇任何文本。很顯然,這是我的廣泛定位,與'section'。有沒有一種方法可以在沒有針對輸入元素的情況下使用document.activeElement.blur();

謝謝。

參考,爲什麼我不能只是修復最初的問題,似乎它的可排序的jQuery用戶界面中實現:Click on jQuery Sortable list does not blur input

+1

我確定有一種方法可以解決你所問的問題,但我會更關心爲什麼當你點擊外面時它不會失去焦點。治療問題,而不是症狀。 – 2015-02-11 22:48:35

+0

問題是因爲當我點擊某個部分之外時,它會鏈接到可排序的操作,該操作旨在移動可排序的部分(如果有意義的話)。 – 2015-02-11 22:49:42

回答

1

我已經遇到這個問題使用排序,最好的辦法之前,修復它如下:

$(document).click(function(evt) { 
    var class_to_choose = $(evt.target).context.tagName.toLowerCase(); 

    if (class_to_choose!="input") { 
     document.activeElement.blur(); 
    } 
}); 

基本上只是確保你點擊的不是一個輸入框。

+0

完美,謝謝! – 2015-02-11 23:33:43