2010-10-08 557 views
5

我想模拟Ctrl + C复制页面中的文本。我第一次尝试这样的:如何用jQuery触发Ctrl + C键事件?

$('#codetext').click(function() { 
    $("#codetext").trigger({ 
    type: 'keydown', 
    which: 99 
    }); 
} 

HTML:

<input type='text' id='codetext'> 

我一直在使用$(this)替代选择也试过,但输入元素也集中于它,所以它不会运行。

回答

2

不知道如何触发CTRL + C,但有一个jQuery插件剪贴板可能有点用处:

http://plugins.jquery.com/project/copy

$("#elmID").copy() // copy all text inside #elmID.

+0

不知道这是否仍然适用于Flash版本> 10 ...该插件也很旧。 – Mottie 2010-10-08 13:14:30

+0

我确定它现在不运行,我测试了它。 – Angelus 2010-10-08 13:16:27

+0

嗯,以及fudgey说这是相当古老。我曾回忆过曾经使用它。对不起,没用! – Ross 2010-10-08 13:18:15

1

您无法以JavaScript(至少在大多数浏览器中)以编程方式触发剪切,复制或粘贴。这些操作只能来自用户。如果你需要这样做,你需要一些类似于其他答案中基于Flash的东西的黑客攻击,但我甚至不会依靠它们永远工作。