2013-08-04 14 views
1

標題設法提出了大部分問題,但是,我很好奇使用LMB單擊的哪個部分會觸發視覺突出顯示。MouseEvent的哪一方面或其他方面會觸發視覺突出顯示?

我的意思是通過視覺突出顯示的是藍色的彩色框(如果你是默認的),它顯示了你選擇的文本,所以你可以看到它。據我所知,實際的選擇是選擇對象錨點和焦點的區別,但是有什麼地方可以告訴Chrome瀏覽器繪製藍色框?

我認爲這兩件事情,文本選擇和文本突出顯示,不一定是一起工作,而是同時工作。我希望能夠用其他按鍵/按鈕來模擬文本選擇 - 從而突出顯示。

回答

0

如果我理解你的問題,你在談論.select事件(我將使用jquery來顯示你可以做什麼)。當用戶在元素中選擇一些文本時觸發該事件。例如:

$("#TextArea").on("select", function(){ 
    alert("you have been selected somesing"); 
}); 

TextArea當然是一個textarea。

編輯:只是一些更多的信息,並提示:

$("#TextArea").on("select", function(){ 
    indexOfSelectionStart = this.selectionStart; 
    indexOfSelectionEnd = this.selectionEnd; 
    alert("first index: " + indexOfSelectionStart + ". sec: "indexOfSelectionEnd); 
}); 

有了你可以知道用戶的選擇(如果你使用slice()

我希望幫助,讓指標我知道如果沒有。

祝你好運。

+0

有趣的信息的種類和相當有用,但它不回答這個問題。 我想要做的是重新創建突出顯示,而不是文本選擇。換句話說,我想在選擇文本時創建出現在文本週圍的藍框。 – muiiu

+0

是textbox/textarea中的文本還是普通文本?你可以使用CSS來突出顯示特定元素(div,p,a等)。但我仍然不確定這是否是你想要的 –

+0

不,從技術上講它是在之內的文本,因此大多數(如果不是全部)這個屏幕上的文本。 您將如何使用CSS突出顯示「動態」(繪製自定義突出顯示開始和結束)? – muiiu

相關問題