エディタライブラリのQuillで、テキストのペースト時などにスクロール位置がジャンプしてしまうことがある。
https://github.com/quilljs/quill
原因
どうやら、ペースト操作時にエディタがフォーカスを一瞬失うのが原因らしい。
テキストカラーなどの、ピッカー系の操作でも同じ現象が起こることがある。
解決策
この問題は、github上でも活発に議論されているようだが、私としてはこの方法がベストな解決策だと思う。
Quillの初期化時のオプションに scrollingContainer: document.documentElement
を指定する。
const editor = new Quill('#editor', {
modules: {
toolbar: ['bold', 'italic', 'underline', 'strike'],
},
scrollingContainer: document.documentElement,
theme: 'bubble'
});
参考
いくつか他の対応策も提示されています。
https://github.com/quilljs/quill/issues/1374