当用户用鼠标高亮显示网页上的段落文本时,我很难找到Javascript事件。一旦文本高亮显示,我就可以使用window.getSelection()
来获取它。
这与在<input type="text">
或<textarea>
中捕获事件无关,这很容易。
我感兴趣的是用户何时高亮显示将由CSSuser-select: all;
或user-select: none;
控制的文本。
jQuery答案的奖励。;-(
您可以绑定到mouseup
:
<body>
<div style='user-select: all'>
all all all all all all all all all all all
</div>
<br>
<div style='user-select: none'>
none none none none none none none none none
</div>
<br>
<div style='user-select: text'>
text text text text text text text text text
</div>
</body>
<script type="text/javascript">
document.addEventListener('mouseup', event => {
if( window.getSelection().toString().length){
window.alert (window.getSelection().toString());
window.getSelection().empty();
}
})
</script>