将 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'));
});
});
我有一个 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'));
});
});