我知道你沒有提到jQuery - 但是對於這種動態的東西,我認爲使用它是非常明智的。
把整個交易換成一個div。
<div id="wordSelector"><spans></div>
然後將一個mousedown事件附加到div。使用信號量確保只在mousedown期間處理事件。在跨度上捕獲鼠標懸停事件,直到註冊mouseup事件。
注意:這些事件可能需要附加到文檔而不是div,以確保在div之外但進入div的mousedown事件得到處理,並且使用mouseup以及mouseup事件不在DIV。
var spansTouched = [];
var mouseDown = 0;
$("#wordSelector").mousedown(function(){
//track spans touched with a semaphore
mouseDown++;
});
$("#wordSelector").mouseup(function(){
mouseDown = 0;
//handle spansTouched and then reset it to []
});
$(".word").mouseover(function(){
if(mouseDown > 0){
spansTouched.push(this);
}
});
顯然有改進的餘地這裏,這就是要突出一個可能的方法使用信號燈和鼠標事件承擔。
你是什麼意思「選擇整個單詞」?他們選擇一個詞時會發生什麼,他們如何選擇一個詞 - 點擊它?突出顯示它? –
菜單將出現在選擇的頂部。 – WHITECOLOR
相關主頁:http://stackoverflow.com/questions/7809319/get-selected-text-expanded-to-whole-words – kol