2016-03-07 36 views
3

說我用document.getElementById('myTextArea').focus();編程設置了textarea的焦點。在那textarea我有一個onFocus事件:有沒有辦法確定JS事件是以編程方式還是通過實際的交互來觸發?

document.getElementsByName('myTextArea')[0].onFocus = function() { 
    alert('I’m focused!'); 
}; 

我只想當用戶實際的重點是textarea而不是當我通過編程設置集中onFocus被解僱。

onFocus中有沒有方法可以判斷事件是由代碼還是由人類觸發的,而無需傳入我自己的參數?

+2

爲什麼當你不想這樣做時,你有必要以編程方式設置焦點? – bugwheels94

+0

@Ankit - 爲了說明我的需要,這是一個過於簡單的例子。 –

+0

嘗試檢查懸停和焦點事件是否屬實?只是扔在那裏。 –

回答

-1

是的,當瀏覽器觸發它時會產生一個'originalEvent'。

+0

我想你在考慮jQuery,而不是JavaScript ... –

+0

@BrandonDurham是真的。這是我發現解決它的唯一方法。 –

相關問題