镜像/复制鼠标操作 JavaScript

Mirror/Duplicate mouse action javascript

本文关键字:操作 JavaScript 鼠标 复制 镜像      更新时间:2023-09-26

这是我的小提琴

handler = function(e) {
  new_e = new e.constructor(e.type, e.originalEvent);
  console.log(new_e.type)
    //var ev = new Event("look", new_e);
  document.getElementById("box2").dispatchEvent(new_e);
}
var box1 = document.getElementById('box1');
box1.addEventListener('dragstart', handler);
box1.addEventListener('dragend', handler);
box1.addEventListener('drag', handler);
box1.addEventListener('click', handler);
box1.addEventListener('dblclick', handler);
box1.addEventListener('mousedown', handler);
box1.addEventListener('mouseup', handler);
box1.addEventListener('mouseover', handler);
box1.addEventListener('mouseout', handler);
box1.addEventListener('mousemove', handler);
//var box2 = document.getElementById('box2');
//box2.addEventListener('dragstart', function(e) { console.log('Entered into #box2'); });
//box2.addEventListener('dragend', function(e) { console.log('Leaving #box2'); });
<div id="box1" style="width: 100px; height: 100px; background-color: navy;">test test test test test</div>
<div id="box2" style="width: 100px; height: 100px; background-color: green;">test test test test test</div>

https://jsfiddle.net/Dilip/8295uxzk/

我想要实现的是,我需要捕获从一个容器(Div)到另一个容器的所有鼠标操作。 就像如果我在第一个div 上从 clientX:10clientX:40 中选择文本一样,它应该在另一个div 上选择相同的文本,位置clientX:10 clientX:40

为了实现上述目标,我做了一个小代码。在上面的示例中,如果我选择蓝色框上的文本,它应该通过克隆鼠标事件来选择绿色框上的文本。请帮助我。

提前谢谢。

我很

确定你不能一次选择多个字符串。 您可以突出显示或以其他方式更改两个字符串的外观,但我认为您所指的"鼠标"字符串选择函数本质上是一个字符串 - 即使您以编程方式执行此操作。 有些方法引用"所选"文本,如果有多个方法,我不知道它们将如何工作。

这里有一些关于选择的讨论,我推断有一个节点可以在给定的 DOM 上进行选择。

但是,我的方法是在检测到选择时在两个div 上使用其他类型的突出显示。 然后,您可以创建新元素,以便在检测到拖动时在屏幕上"重影"。