复制文本时会自动跳到下一行,怎么解决,实际是因为粘贴的时候粘贴的不是纯文本,而是携带了标签所致
解决方式
//html部分
<div contenteditable="true"
ref="printContent"
@paste="optimizePasteEvent"
@focus="isChange = false"
@blur="onBlur"></div>
//js部分
methods: {
optimizePasteEvent (e) {
// 监听粘贴内容到输入框事件,对内容进行处理 处理掉复制的样式标签,只拿取文本部分
e.stopPropagation()
e.preventDefault()
let text = '', event = (e.originalEvent || e)
if (event.clipboardData && event.clipboardData.getData) {
text = event.clipboardData.getData('text/plain')
} else if (window.clipboardData && window.clipboardData.getData) {
text = window.clipboardData.getData('text')
}
if (document.queryCommandSupported('insertText')) {
document.execCommand('insertText', false, text)
} else {
document.execCommand('paste', false, text)
}
},
}