在contenteditable属性的标签内按下Enter键时,其实并不是简单的在文字后面加\n符号,因此,我们使用string.trim()方法或者string.replace()方法试图删除\n符号都是无效的
原因是当我们按下Enter键时,浏览器会在文字后面添加一个被div包裹的br标签作为换行。
原来标签内的内容:
按下Enter后标签内的内容:
当我们知道这一点后,我们只需要将这两个标签删除即可
e.target.innerHTML = e.target.innerText
在contenteditable属性的标签内按下Enter键时,其实并不是简单的在文字后面加\n符号,因此,我们使用string.trim()方法或者string.replace()方法试图删除\n符号都是无效的
原因是当我们按下Enter键时,浏览器会在文字后面添加一个被div包裹的br标签作为换行。
原来标签内的内容:
按下Enter后标签内的内容:
当我们知道这一点后,我们只需要将这两个标签删除即可
e.target.innerHTML = e.target.innerText