如果textarea已經聚焦,如何檢測.click
事件是否觸發?如果輸入焦點集中,Javascript會檢測
我有這個JavaScript:
$(".status").on("click","textarea",function(){
if ($(this) == "focused") {
// fire this step
}else{
$(this).focus();
// fire this step
}
如果textarea已經聚焦,如何檢測.click
事件是否觸發?如果輸入焦點集中,Javascript會檢測
我有這個JavaScript:
$(".status").on("click","textarea",function(){
if ($(this) == "focused") {
// fire this step
}else{
$(this).focus();
// fire this step
}
使用純JavaScript:
this === document.activeElement // where 'this' is a dom object
或jQuery的:focus
僞選擇。
$(this).is(':focus');
我不知道爲什麼它不工作....沒有一個..如果它沒有集中,它會觸發第一步..但它應該觸發其他步驟.. – southpaw93
單擊文本區將始終關注它。 – Prinzhorn
請注意,如果節點未連接到DOM或隱藏(例如display:none;) –
使用jQuery的.is(":focus")
$(".status").on("click","textarea",function(){
if ($(this).is(":focus")) {
// fire this step
}else{
$(this).focus();
// fire this step
}
如果你可以使用jQuery,然後使用JQuery :focus selector會做要緊
$(this).is(':focus');
它不是重複的,因爲另一個問題特別要求jQuery解決方案。 –
我同意。我想知道OP是否曾經是基於jQuery的... – trysis
@HermannIngjaldsson所以隱含地這樣做,因爲提供的代碼使用jQuery(就像它最初發布時那樣)。因此它**是重複的。 – robinCTS