我正在开发一款Angular9应用程序。在某些情况下,当使用双击页面的任何部分的任何文本/标签,并复制它时,Chrome默认会在复制的文本中添加一些不可打印的字符。
所以我想,如果有一些全局复制事件服务可以注入到主app.module和onCopy中,我就可以替换复制文本中不可打印的文本。
请指教我怎样才能做到这一点。在javascript中,我发现了如下内容:
document.addEventListener('copy', (event) => {
console.log('copy action initiated')
});发布于 2020-12-29 12:12:18
使用Rxjs。
const source$ = fromEvent(document, 'copy');现在只需订阅即可。
let subscription = source$.subscribe (copy =>
{
const selection = document.getSelection();
event.clipboardData.setData('text/plain', selection.toString().toUpperCase());
event.preventDefault();
console.log(copy)
});别忘了在你的ngOnDestroy中取消订阅。
https://stackoverflow.com/questions/65487110
复制相似问题