2011-01-06 116 views
2

我有一個模式,我彈出與jQuery與我想觸發focus()事件的文本字段。
問題是fextfield IS已經集中注意..在大多數瀏覽器中它甚至被突出顯示。 (我不知道爲什麼?)Javascript非重點文本字段輸入

如何取消焦點或取消選擇文本,以便我可以使用focus()事件?

<input type="text" class="shortcut" id="input-shortcut" value="<?= $shortcut_url; ?>" /> 

$(".shortcut").focus(function() { 
    $(this).addClass("focus"); 
    $(this).select(); 
}).blur(function() { 
    $(this).removeClass("focus"); 
}); 
+0

如果輸入元素已經有焦點,觸發'focus'事件似乎沒有問題:http://jsfiddle.net/fkling/uT9d9/(至少在Chrome中和Firefox)。你試圖觸發它的地方?你知道'$('。shortcut')'不會選擇你的輸入元素嗎? – 2011-01-06 21:21:04

+0

嗯,它似乎不工作.select(),但? – FFish 2011-01-06 21:24:24

+0

提高'選擇'作品太:http://jsfiddle.net/fkling/uT9d9/1/ – 2011-01-06 21:29:53

回答

0

使用jQuery的模糊()函數。這基本上就像是「聚焦」

+0

是的,但blur()是一個事件,如何我可以在文本框已經集中時觸發它嗎? – FFish 2011-01-06 21:26:41

+1

@FFish:'element.blur()'但我敢肯定你根本不需要「離焦」。 – 2011-01-06 21:27:53

+0

嘖嘖,你說得對,它對元素有效。 – FFish 2011-01-06 21:34:44