这两天我在做一个项目,其中一个环节需要用代向页面的某个textarea输入大段的文字。
这段文字的格式比较复杂,有很多html标签,很多的换行符在里面。
我立马想到的是puppeteer的type方法。
但是当我用puppeteer的type方法自动输入内容的时候,发现它并不能很好的识别里面的换行符,会导致文字有很多的空格,格式错乱掉。
为了解决这个问题,在谷歌里搜索了很多次,也没有找到解决方法。
就当我觉得这个问题无法解决的时候,发现了一个html的API,就是document.execCommand。
虽然这个API已经被废弃,但是还是可以用的!
不管黑猫白猫,抓到老鼠的就是好猫!
详细的内容可以看这里。
果然啊,我把puppeteer的type方法替换成document.execCommand之后,粘贴进去的内容跟原来的格式一模一样!
代码里的 insertText指的是在光标插入位置插入文本内容或者覆盖所选的文本内容。
除了这个,还有insertHTML,insertImage,insertOrderedList等很多方法。