[英]Event listener for radio button deselection in jquery/javascript
[英]jQuery event to detect deselection of text
jQuery是否捕獲了這樣的事件,可以在取消選擇文本后檢測到對文本的取消選擇? 到目前為止,我一直在使用一種方法來捕獲對文檔正文的單擊,但是click(或mouseup)會在清除文本之前獲得對文本的選擇(通過單擊文檔中的其他位置一次)。
此外,在用戶選擇頁面中的某些文本后,還會觸發事件嗎? 上面的方法成功工作是因為,顯然,在選擇了文本之后會觸發正文上的click事件。 但是我想要一種更清潔的方式。
注意:此操作在DIV上完成,而不是在INPUT或TEXTAREA元素上完成。
您可以使用Selection-對象代表用戶選擇的文本范圍或當前位置。 您的問題已回答堆棧:
解決方案是創建一個原型,以提高瀏覽器的兼容性和功能。 這也可以,但是我建議上面鏈接的解決方案:
編輯:如果它們在范圍內,則可以將AnchorOffset和FocusOffset存儲到會話中,然后進行比較,簡單
$(function() {
$(document).on("mouseup", function() {
var mytext = window.getSelection();
if (typeof sessionStorage.getItem('initialRange') != 'undefined' && (mytext.anchorOffset != sessionStorage.getItem('initialRange') || mytext.focusOffset != sessionStorage.getItem('finalRange'))){
//DO WHAT YOU WANT, THE TEXT HAS BEEN DESELECTED
}
//take the coordenates of mouseup, when the mouse create a range, store the values
if (mytext.anchorOffset != mytext.focusOffset){
sessionStorage.setItem('initialRange', mytext.anchorOffset);
sessionStorage.setItem('finalRange', mytext.focusOffset);
}
});
});
編輯:下次,我會讀得更好:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.