我有一个 div,当点击它时,我想要一个动作发生。
该 div 包含一些文本。
如果用户突出显示文本(例如,他们试图复制/粘贴,而不是实际单击它),那么我想取消 onclick 事件,这样如果他们只是试图突出显示而不是实际单击,则该操作不会发生。
有没有办法用 JQuery 或普通的旧 Javascript 来做到这一点?
我有一个 div,当点击它时,我想要一个动作发生。
该 div 包含一些文本。
如果用户突出显示文本(例如,他们试图复制/粘贴,而不是实际单击它),那么我想取消 onclick 事件,这样如果他们只是试图突出显示而不是实际单击,则该操作不会发生。
有没有办法用 JQuery 或普通的旧 Javascript 来做到这一点?
尝试检测 onmouseup 事件:
document.onmouseup = doSomethingWithSelectedText;
如果文本被突出显示,您将在 window.getSelection 中使用一个值来确定您应该触发哪种事件。
看看这篇文章/小提琴:
Javascript:如何检测一个单词是否突出显示 http://jsfiddle.net/timdown/SW54T/