JavaScript 如何报告单击在文档中的位置?

How can JavaScript report the position of a click in a document?

对于上下文,我正在尝试对 Google Docs 如何让用户输入与突出显示的文本关联的评论进行近似,如下所示:

不是试图实现Google文档!我只想让 end-user 对静态 HTML 页面中的特定句子、段落或标题发表评论。我缺少的部分是当用户点击时,我如何找出(使用 JavaScript)在文本或 DOM 中发生点击的位置?

支持的浏览器:IE 10+、Edge、Chrome、Firefox、Safari(2017 年初),包括 iOS 和 Android 的最新版本(加上 Mac , Windows, Linux).

How to implement Google doc like text editor? 具有教育意义,但我正在寻找一种方法来在几天内实现仅此一个功能的近似值。服务器上发生了什么,位置如何存储在数据库中,如果静态 HTML 随时间变化会发生什么,所有这些都超出了这个问题的范围。我只是询问 client-side JavaScript 并定位用户在文档中单击的位置。

以下代码将为您提供用户 click 事件的坐标。

document.addEventListener("click", (e) =>  console.log(e.clientX, e.clientY))