【发布时间】:2011-03-08 10:13:58
【问题描述】:
所以,我正在使用已设置语法等的 WYSIWYG 编辑器。我的任务是为跨程序添加复制和粘贴功能。我的代码在 Ubuntu 上的 Google Chrome、Ubuntu 和 Windows 上的 Firefox 中工作,但在 Windows 上的 Chrome 中不工作。
我已将问题归结为基本问题。当发送粘贴命令(通过 Ctrl + V)事件时,我立即将焦点更改为隐藏的、可内容编辑的 iframe,并在那里触发事件。然后我等待它冒泡,然后处理解析和粘贴。
this.pasteOperation = function(event, controller) {
this._cutpastearea.getEditable().focus().trigger(event);
setTimeout(function() { controller.clipboardControl().handlePaste(); }, 1);
},
(getEditable 获取 iframe 的 contenteditable 部分)
现在,如果我显示 iframe,并禁用设置的超时,我发现焦点已被抓取,但没有粘贴任何内容。如果我继续手动粘贴它,然后调用该函数,一切正常。
那么为什么这不会触发事件呢?
编辑:也在Chromium Issues 提出了这个问题。这似乎是 iframe 唯一的问题。
【问题讨论】:
标签: javascript jquery google-chrome