Javascript 如何拦截命令+;OSX Safarii上的V?

Javascript 如何拦截命令+;OSX Safarii上的V?,javascript,jquery,macos,paste,Javascript,Jquery,Macos,Paste,我有一个用于截取CTRL+V和COMMAND+V的函数: function paste() { clip.val('').focus(); //wait until Browser insert text to textarea self.oneTime(100, function() { self.insert(clip.val()); clip.blur().val('');

我有一个用于截取CTRL+V和COMMAND+V的函数:

    function paste() {
        clip.val('').focus();
        //wait until Browser insert text to textarea
        self.oneTime(100, function() {
            self.insert(clip.val());
            clip.blur().val('');
        });
    }
剪辑是隐藏的文本区域,现在它是用黑色div隐藏的(这是我找到的唯一修复android的方法)。在keydown事件中,我调用该函数:

} else if (e.which === 86) {
    //CTRL+V
    paste();
    return true; // I return true because I have return false at the end
                 // of keydown event
}

但似乎它在MacOSX Safari上不起作用,因为您可以在这里查看。有人知道为什么会发生这种情况以及如何解决吗?

您是否尝试过使用@Nit感谢链接,将检查onpaste事件。@Nit我使用过onpaste,但在FireFox中根本不起作用,在Chrome中也可以。我已经在OS X FireFox和Safari上测试了链接答案,效果很好。您可能实现了错误的链接答案,或者您的问题存在于代码逻辑的其他地方。@Nit再次使用“粘贴事件”创建了代码,并且在FF中也可以工作。