1

我正在使用 Jquery 和 Zeroclipboard。

我已将 $.post 用于 ajax 调用,之后零剪贴板事件不再起作用。

我试过玩 $("#id").live..

如何将零剪贴板包装在实时查询周围或实施即使在 ajax 调用之后也能保留事件的解决方案?

在 PHP 页面上调用以加载零剪贴板元素的函数:

function LiveZeroClipboard(copyText)
{   
var i = clips.length;

clips[i] = Array();
clips[i]['client'] = new ZeroClipboard.Client();
clips[i]['client'].setHandCursor(true);
clips[i]['client'].setText(copyText);

clips[i]['client'].addEventListener('onMouseOver', function(client){
    rollOverCSS(2);
});

clips[i]['client'].addEventListener('onMouseOut', function(client){
    rollOverCSS(1);
});

clips[i]['client'].addEventListener( 'onMouseUp', function(client) {
    //fades in a popup and fades out after 1000 miliseconds
    $('#'+AddressPopupBoxID).fadeIn("fast");
    setTimeout(function(){$('#'+AddressPopupBoxID).fadeOut();},1000);
});

}

加载 Ajax 文件的 onClick 函数:

function AjaxCall(postURL, JSONData, UpdateID){
$.post (postURL, { data_to_send:JSONData }, function (data_back){
        $(UpdateID).html(data_back);
    })

}

因此,在将 ajax 文件加载到网页后,零剪贴板事件不再起作用。

我猜文档范围现在只在 ajax 文件中,它只是一个更新按钮并触发一些数据库任务的 PHP 文件。

保持零剪贴板事件持续存在的解决方案是什么?

谢谢

4

0 回答 0