Javascript 如果高亮显示文本,则取消onclick事件

Javascript 如果高亮显示文本,则取消onclick事件,javascript,jquery,Javascript,Jquery,我有一个div,单击它时,我希望发生一个动作 该div包含一些文本 如果用户高亮显示文本(例如,他们试图复制/粘贴文本,而不是实际单击文本),则我希望取消onclick事件,以便在他们只是尝试高亮显示而不是实际单击文本时不会发生操作 有没有办法用JQuery或普通的旧Javascript实现这一点?尝试检测onmouseup事件: document.onmouseup = doSomethingWithSelectedText; 如果文本高亮显示,则window.getSelection中会有

我有一个div,单击它时,我希望发生一个动作

该div包含一些文本

如果用户高亮显示文本(例如,他们试图复制/粘贴文本,而不是实际单击文本),则我希望取消onclick事件,以便在他们只是尝试高亮显示而不是实际单击文本时不会发生操作


有没有办法用JQuery或普通的旧Javascript实现这一点?

尝试检测onmouseup事件:

document.onmouseup = doSomethingWithSelectedText;
如果文本高亮显示,则window.getSelection中会有一个值。使用该值确定应该触发哪种类型的事件

查看此帖子/小提琴:


在onclick事件中,检查是否选择了文本。如果是,中止???我想您应该在
mouseup
之后检查是否选择了任何文本。@ErikE非常正确。我猜OP有“e.g.”,所以他们不仅仅是指拷贝/paste@PalashMondaljQuery是JavaScript。这个问题是完全合理的,标签表明vanilla JS或jQuery是可以接受的。不清楚OP是否需要jQuery解决方案,因为他特别提到javascript,无论如何这是次要的