提问者:小点点

你能在Firefox中将“粘贴图像”支持破解到文本区域吗?


我正在阅读这篇关于在Chrome和Firefox中粘贴图像的文章。

总而言之,Firefox没有提供任何关于粘贴的图像的信息,“粘贴”事件处理程序会得到一个nullclipboardData对象。

为了解决这个问题,可以在DOM中放置一个不可见的contenteditablediv,并始终保持它的焦点,当粘贴内容时,它会触发一个超时,检查不可见div的内容以获取图像句柄。

除了用contenteditable div替换textarea之外,有没有其他方法可以使用magic iframes或者别的什么来破解东西,从而在Firefox中获得粘贴图像的支持?

(注意:Java和Flash解决方案是不可能的)


共2个答案

匿名用户

<div id="paste" contenteditable="true"></div>

将此项目插入到您的html中,然后调用以下命令

var pasteDiv = $("#paste")[0];
document.body.onpaste = function (event) {
    pasteDiv.focus();
    //do your magic firefox here
};

onpaste在这里触发,因为您有contenteditablediv,然后您可以告诉firefox将剪贴板数据集中在哪里。(如果没有至少一个contenteditable项,onpaste不会启动)

有关工作示例,请参见:https://gist.github.com/4577472

匿名用户

不,没有别的办法了。

*在浏览器中运行的不可见内容Editable div或Java小程序是两种方法。