Ext Js和zeroclipboard

时间:2014-02-17 13:38:38

标签: javascript html extjs zeroclipboard

我在网格中添加了actioncolumn。在actioncolumn处理程序(单击)上,我想使用zeroclipboard库将文本复制到剪贴板。

我遇到了一些问题。有时我需要在actioncolumn上多次点击才能触发副本。有时我必须刷新页面才能触发副本。

我的actioncolumn处理程序:

handler: function(view, rowIndex, colIndex, item, e, record, row){

   ZeroClipboard.config({moviePath: 'resources/js/zeroclipboard/ZeroClipboard.swf'});
   var client = new ZeroClipboard(e.target);

   client.on('load',function(client) {

    client.on('datarequested', function(client) {
        client.setText("Text to be copied");
    });


    client.on('complete', function(client, args) {
       // alert("Copied text to clipboard: " + args.text);
       Myapp.app.getController('UiNotification').showNotification("Link copied to clipboard");
    });   
});
}

可能的解决方法之一是在mouseover上设置复制文本,但actioncolumn除处理程序外没有任何其他事件。

请帮忙

1 个答案:

答案 0 :(得分:1)

所以actioncolumn处理程序是click?如果是,那么是的,在click事件期间动态附加ZeroClipboard为时已晚。充其量,它会在第二次点击时出现;在最坏的情况下,它可能会延迟几次点击(按时间),因为它还需要异步加载ZeroClipboard SWF文件。