标题设法提出了大部分问题,但是,我很好奇使用 LMB 的哪一部分单击会触发视觉突出显示。
我所说的视觉突出显示是蓝色框(如果您是默认设置),它显示您选择的文本,因此您可以看到它。据我所知,实际选择是选择对象锚点和焦点的差异,但在两者之间有什么东西告诉 Chrome 画一个蓝色框吗?
我认为这两个东西,文本选择和文本突出显示,不一定一起工作,而是同时工作。我希望能够使用其他键/按钮来模拟文本选择 - 从而突出显示。
标题设法提出了大部分问题,但是,我很好奇使用 LMB 的哪一部分单击会触发视觉突出显示。
我所说的视觉突出显示是蓝色框(如果您是默认设置),它显示您选择的文本,因此您可以看到它。据我所知,实际选择是选择对象锚点和焦点的差异,但在两者之间有什么东西告诉 Chrome 画一个蓝色框吗?
我认为这两个东西,文本选择和文本突出显示,不一定一起工作,而是同时工作。我希望能够使用其他键/按钮来模拟文本选择 - 从而突出显示。
如果我理解你在谈论 .select 事件的问题(我将使用 jquery 来展示你可以用它做什么)。当用户在您的元素中选择某些文本时触发该事件。例如:
$("#TextArea").on("select", function(){
alert("you have been selected somesing");
});
TextArea 当然是一个文本区域。
编辑:只是更多信息和提示:
$("#TextArea").on("select", function(){
indexOfSelectionStart = this.selectionStart;
indexOfSelectionEnd = this.selectionEnd;
alert("first index: " + indexOfSelectionStart + ". sec: "indexOfSelectionEnd);
});
通过索引,您可以知道用户选择了什么(如果您使用slice())
我希望这有帮助,如果没有,请告诉我。
祝你好运。