将ZeroClipboard与Jquery.DataTables一起使用

时间:2015-01-19 15:33:38

标签: datatables jquery-datatables zeroclipboard

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

我开始使用ZeroClipboard使复制按钮自动复制链接,而不是使用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);
    });

虽然有效,但问题是用户必须单击按钮两次才能使复制事件生效,这只是可怕的用户体验。

我很好奇是否有人可以帮助我按照应有的单击操作进行操作?

1 个答案:

答案 0 :(得分:2)

我使用了你的例子并进行了调整,以便在悬停时将链接转换为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'));
     });
});