将 ZeroClipboard 与 Jquery.DataTables 一起使用

Using ZeroClipboard with Jquery.DataTables

我有一个 Jquery.DataTables 实例,它有一个带有两个按钮的用户列表;一个用于自动登录用户,另一个用于将用户登录 url 复制到剪贴板。

我开始使用 ZeroClipboard 让复制按钮自动复制 link 而不是使用 confirm() 方法的旧方法。我遇到的一个问题是让 zeropclipboard 找到点击事件以连接来自 zeroclipboard 的复制事件。

我让它工作的唯一方法是执行以下操作:

$('#userLogins').on('click', '.copy', function () {
    var client = new ZeroClipboard($('button[data-clipboard-text]'));

    client.on('aftercopy', function () {
        setBusy('Successfully Copied Login Link.');
        setTimeout(function() {
            setBusy(false);
        }, 2000);
    });

这有效,但问题是用户必须单击按钮两次才能使复制事件起作用,这简直是糟糕的用户体验。

我很好奇是否有人可以帮助我将它变成应该的一键式操作?

我使用了您的示例并对其进行了调整,以便在悬停时将链接转换为 zeroclipboard flash 内容,然后当您单击时,它会复制。一次悬停,一次点击。

$("#elementid").on('hover', '.class_of_button', function(){
    var zc = new ZeroClipboard($(".class_of_button"));
     zc.on('copy', function(event){
       event.clipboardData.setData('text/plain',   
       event.target.getAttribute('data-attribute-name'));
     });
});