IE 11 粘贴仅适用于输入字段
IE 11 Paste only works on Input Fields
我需要在自定义网格上捕获粘贴事件,但在 IE11 中,Ctrl + V 粘贴事件仅适用于输入字段。我需要它在组件上工作并通过 Window 访问它。在 Chrome 中它工作完美。
public ngOnInit() {
window.addEventListener('paste', myCustomEvent.bind(this));
}
在 Chrome 中,当用户在屏幕上的任意位置单击 Ctrl+ V 时会触发
myCustomEvent(event) {
// gets data from clipboard and converts it to an array (1 array element for each line)
let clipboardData = event.clipboardData || event.originalEvent['clipboardData'].getData('text');
console.log('event' , event);
console.log(clipboardData);
}
为按键按下创建一个侦听器事件。当用户按下 Ctrl+V 时,它将触发您的事件。从那里您可以访问 clipBoardData。不要忘记将 Renderer2 导入您的构造函数
this.global = this.renderer.listen('document', 'keydown', (event) => {
if (event.ctrlKey === true && event.key === 'v') {
const clipboardData = window['clipboardData'].getData('Text');
if (clipboardData) {
this.ProcessBeforePaste(clipboardData);
}
}
});
我需要在自定义网格上捕获粘贴事件,但在 IE11 中,Ctrl + V 粘贴事件仅适用于输入字段。我需要它在组件上工作并通过 Window 访问它。在 Chrome 中它工作完美。
public ngOnInit() {
window.addEventListener('paste', myCustomEvent.bind(this));
}
在 Chrome 中,当用户在屏幕上的任意位置单击 Ctrl+ V 时会触发
myCustomEvent(event) {
// gets data from clipboard and converts it to an array (1 array element for each line)
let clipboardData = event.clipboardData || event.originalEvent['clipboardData'].getData('text');
console.log('event' , event);
console.log(clipboardData);
}
为按键按下创建一个侦听器事件。当用户按下 Ctrl+V 时,它将触发您的事件。从那里您可以访问 clipBoardData。不要忘记将 Renderer2 导入您的构造函数
this.global = this.renderer.listen('document', 'keydown', (event) => {
if (event.ctrlKey === true && event.key === 'v') {
const clipboardData = window['clipboardData'].getData('Text');
if (clipboardData) {
this.ProcessBeforePaste(clipboardData);
}
}
});