這個問題帶有一些背景。請參閱我最近發佈的其他兩個問題有關:谷歌瀏覽器,無限循環和選擇文本
How to select text in a textbox cross-browser
Infinite loops created in google chrome
提醒一句:它有可能是第二個鏈接是紅鯡魚。
好吧,所以我的問題是,我想這樣做,當用戶第一次點擊或標籤到文本框中,所有的文本應該被選中。如果文本框具有焦點,則對文本框內文本的後續點擊應該正常運行(即不會重新選擇所有文本)。我在上面第一個鏈接中選擇的答案是我在所有瀏覽器中找到的答案。代碼貼在下面爲您提供方便:
$('input[type="text"]').live('focus', function (event) {
var inp = this;
setTimeout(function() {
inp.select();
}, 1);
event.stopPropagation();
event.preventDefault();
return false;
});
現在我上面的第二個鏈接是什麼,我似乎在用這種方式運行。間歇性地看來,谷歌瀏覽器卡在某處,開始改變文本框之間的焦點非常快。你可以看到我認爲在這裏發生的事情:http://jsfiddle.net/ajbeaven/XppG9/14/
就像我說的,它似乎是一個間歇性問題,所以你可能不得不嘗試重新加載頁面幾次,以便看到我認爲可能導致改變焦點。請記住,它似乎只在鉻中發生。
感謝任何人可以擺脫一些光!
看來chrome一次只能關注一個對象,因此每次發生事件時都會切換到對象。 – dpp
在Chrome瀏覽器中的jsFiddle中很容易看到。我不知道它爲什麼這樣做。取下計時器會使問題消失,但選擇不會粘住。我會很樂意看到答案是什麼。 – jfriend00