IE 11上的复制事件无法正常工作

时间:2017-06-24 00:46:40

标签: javascript jquery internet-explorer internet-explorer-11 event-delegation

我的情况要复杂得多,但我能够把它简化为更简单的。

以下是fiddle

它是这样的:

<div class="outer" tabindex="0">
      outer div, there are many  child elements herehere
      <div class="inner" tabindex="1">
      at some point, one of those many child has this inner div, it has also multiple child elements showing values. This is the text to copy </div>
</div>

我有一个div容器,在示例中说是具有外部类的容器。 它有许多子元素,其中一个是另一个div,比如内部类,也有很多子元素。

我想要实现的是能够使用 Ctrl + C 进行复制,同时将焦点放在外部div或其任何子节点中。

我尝试在外部div中使用复制事件

jQuery('.outer').on('copy', function() {
 // my logic here to access data inside div and copies to clipboard
});

当我按下 Ctrl + C 时,让事件从任何孩子聚焦起来,所以我只注册了一个事件,并且一个地方可以执行我的事件逻辑。

即使它在Chrome和Firefox中运行良好,我也有一些与IE11有关的问题。

在我的计算机中,我已安装IE 11.0.9600.17843似乎工作得很好(事件不时会触发)

但是在另一台Windows 8.1和IE 11.0.9600.18698的计算机中,如果我专注于外部div,则会触发,但如果我专注于后代div(例如内部),它就无效。

我已经检查过IE配置为允许在安全部分以编程方式访问剪贴板。

据我所知,根据msdn,复制事件不会在IE中冒泡(而在FF中则是Chrome)。 那是问题吗?我该如何解决?

小提琴应该在FF和Chrome中正常工作,但在IE 11中它不应该(至少它不适用于上面提到的版本)。我添加了一些CSS,这样你就可以知道哪个div专注于测试问题。

谢谢,

0 个答案:

没有答案