2013-10-09 73 views
2

是否有可能獲得從模糊事件中單擊的dom元素。模糊事件:獲取從模糊事件中點擊的元素

myTxtBox.blur(function (e) { 

var myTxtBoxClass = e.target.className 
var getClassOfElementclicked == //get the class of clicked element 

}); 
+3

是, 入住這裏: http://stackoverflow.com/questions/11544554/get-the-clicked-object-that-triggered-jquery-blur-event – Nick

+0

+1的引用,只有我會添加的東西是避免這樣的全局變量。儘量在可能的範圍內進行限定。 – PlantTheIdea

回答

0

我認爲你應該使用.click(function(){});獲取點擊對象。然後,您可以將其設置爲模糊。目前尚不清楚首先發起模糊事件的原因。

如果您想查看當前「模糊」的哪個對象被單擊,則可以在對象模糊並將單擊事件分配給該類時爲其分配類。

0

blur可以被調用的不僅僅是點擊一個控件 - 用戶可以選項卡離開。如果您感興趣的只是click事件的目標,那麼您可以註冊點擊處理程序。但是,如果你對獲得的元素更加感興趣,他們會失去焦點(彼此靠近)(它們是兩個單獨的事件,所以你不能真的認爲blur有一個「新聚焦的目標「屬性,你可以使用這樣的事情:

$('input').blur(function (e) { 
    console.log('lost focus: ', e.target); 
}); 
$('input').focus(function (e) { 
    console.log('gained focus: ', e.target); 
}); 

http://jsfiddle.net/Palpatim/QUDED/

另外,一定要看到在jQuery documentationblur()的討論:該事件不會冒泡的IE瀏覽器,所以要根據您的使用情況下,你不妨使用focusout事件。

+0

謝謝,但這裏是我真正的問題http://stackoverflow.com/questions/19270504/div-is-not-getting-focus-in-time-blur-fires-before-the-focus-out我試圖打破它下降 –