单击元素后的Jquery / HTML5文本副本?

时间:2014-10-30 14:00:02

标签: jquery html5 copy clipboard

点击元素后的Jquery / HTML5文本副本? 我有文字,里面是名字"复制"我想在点击后复制.copy span的值。

这是我的文字:

<span class="copy">Donec laoreet interdum</span> lectus, vel pharetra   ligula mollis sit amet. Quisque in nibh id felis scelerisque.

这是我的jquery代码:

$(function () {
    $('.copy').click(function(){
        // copy action, ?
    });
});
点击后我想复制&#34; Donec laoreet interdum&#34;到剪贴板。 请帮助,最好的问候!

4 个答案:

答案 0 :(得分:3)

由于安全性,JavaScript拷贝到剪贴板是不可用的,这也意味着jQuery无法将文本复制到剪贴板。你可以用闪光灯来做。

http://www.paulund.co.uk/jquery-copy-clipboard

答案 1 :(得分:1)

我不再使用Adobe Flash了 - 浏览器支持正在下降。有一个新的HTML5-JS-only&#34; Clipboard API and events&#34; (撰写本文时2015年4月21日的工作草案),您也可以将其复制/粘贴到您的操作系统剪贴板中。

答案 2 :(得分:0)

您可以像这样获取文字内容

    $('.copy').text()

要将提取的文字复制到剪贴板,您可以使用ZeroClipboard之类的liv但这仅适用于用户实际点击“触发器”的情况。按钮。一个java脚本模拟&#39;点击&#39;在触发器上将无法正常工作

答案 3 :(得分:0)

Ecmascript规范不建议直接复制到用户剪贴板。通过下面的代码实现类似结果的一种简单方法

function copyToClipboard(text) {
    window.prompt("Copy to clipboard: Ctrl+C, Enter", text);
}

IE有一种访问剪贴板的方法。以下代码仅适用于IE

<script type="text/javascript">
function select_all(obj) {
    var text_val=eval(obj);
    text_val.focus();
    text_val.select();
    if (!document.all) return; // IE only
    r = text_val.createTextRange();
    r.execCommand('copy');
}
</script>
<input value="http://www.sajithmr.com"
       onclick="select_all(this)" 
       name="url" type="text" />

如何使用Flash获得跨浏览器访问剪贴板的权限。有一个优雅的插件可以插入剪贴板:zeroclipboard.org/