我正在使用 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 文件。
保持零剪贴板事件持续存在的解决方案是什么?
谢谢