我正在使用QuillJS编辑器(真棒!)用于多平台论坛网络应用程序,我正在尝试用Android的webview解决问题(同样的事情发生在Chrome应用程序中)。基本上,当我长按以在帖子的顶行选择一些文本时,原生上下文菜单会覆盖Quill工具栏。
我已经在编辑器元素中添加了css padding-top以在下一个屏幕截图中获得结果,但是当没有上下文菜单时,在编辑区域的顶部有空白空间看起来很奇怪。
我发现的其他事情:您无法向下拖动上下文菜单,在其外部点击或按后退按钮取消选择文本。您可以通过处理oncontextmenu事件来保持上下文菜单不显示,但是无法剪切/复制/粘贴。
还有其他选择吗?如果Quill工具栏有剪切/复制/粘贴选项,这将是很酷的,这将允许我只是禁止编辑器div的上下文菜单,但我找不到这样的选项。
答案 0 :(得分:1)
回答我自己的问题。
我更改了弹出窗口的方向,使其位于所选文本的下方。这是初始化脚本:
<!-- Initialize Quill editor -->
<script>
var quill = new Quill('#editor-container', {
modules: {
toolbar: [
['bold'],
['italic'],
[{ 'color': [] }],
[{ size: ['small', false, 'large', 'huge'] }],
['image'],
['link']
]
},
placeholder: '(type your message here)',
theme: 'bubble' // 'snow' or 'bubble'
});
quill.on('text-change', function (delta, oldDelta, source) {
if (source === 'api') {
console.log("An API call triggered this change.");
} else if (source === 'user') {
console.log("A user action triggered this change.");
}
var htmlContent = quill.root.innerHTML;
$('#body').val(htmlContent);
});
window.onload = function () {
quill.focus();
};
</script>