我想检测每当有人点击div时(基本上我想知道用户何时与我网站上的一段文字进行交互,通过选择一些文字或点击一个链接),但我不想干扰用户正在做的事情.
如果我在div上放置一个onmousedown或onclick事件,它最终会破坏选择,链接等.有没有办法捕获这些事件而不会造成任何干扰?
最佳答案
Onmousedown或onclick不应该干扰任何东西,只要它不返回false;
原文链接:https://www.f2er.com/html/426335.html你可以这样做:
document.getElementById("spy-on-me").onmousedown = function () {
console.log("User moused down");
return true; // Not needed,as long as you don't return false
};
如果您有其他脚本通过此方法在页面上附加行为,那么为了防止覆盖它们,您可以执行以下操作:
var spyElement = document.getElementById("spy-on-me");
var oldMousedown = spyElement.onmousedown;
spyElement.onmousedown = function () {
console.log("User moused down");
if(oldMousedown) oldMousedown();
};