基于 Swing 的浏览器中的 CKEditor 双 ENTER 问题

发布于 2024-08-07 19:02:39 字数 638 浏览 3 评论 0原文

背景:

为了向与我们的 Web 界面兼容的应用程序添加一些基本的 HTML/富文本编辑,我尝试将 CKEditor 嵌入到基于 swing 的 webrenderer 浏览器中。 Webrenderer 的作用就像一个 swing 组件,然后加载我的简单 HTML 页面,其中包含启动 CKEditor 的调用。

这工作正常,我可以在我的应用程序中设置/获取编辑后的 ​​HTML 文本。

问题:

我看到的问题是,每当按下 ENTER 键时,就好像它被处理了两次。例如,每次按 ENTER 键都会在编辑的文本中生成 2 行。或者,如果在项目符号列表中键入内容,则按 ENTER 键会导致列表终止文本输入,并从下面的新行开始(与在普通浏览器中按两次 ENTER 键的行为相同)。

如果我将 CKEditor 切换到源模式或者使用基本的 HTML 文本区域,则 ENTER 会正常运行。另外,如果我直接将简单的编辑器页面加载到 Firefox 中,那么它就可以正常工作。

我猜想 CKEditor 和 swing 浏览器之间正在发生一些交互。 (我最近注意到,如果浏览器在带有默认按钮的 JDialog 中使用,则任何按 ENTER 键都会激活默认按钮,因此不确定 ENTER 的处理在 swing 和 webrenderer 之间的位置)

谢谢, 抢。

Background:

To add some basic HTML/rich text editing to our application that is compatible with our web interface I am attempting to embedded CKEditor within the swing based webrenderer browser. Webrenderer acts like a swing component and then loads up my simple HTML page containing an invocation to start CKEditor.

This works fine and I am able to set/get the edited HTML text within my application.

Problem:

The issue I'm seeing is that whenever the ENTER key is hit it is as if it is processed twice. E.g each press of the ENTER key generates 2 lines in the edited text. Or if typing in a bullet list then a press of ENTER causes the list to terminate an text entry to start on a fresh line below (same behaviour as if you hit ENTER twice in a normal browser).

If I switch CKEditor to source mode or if I use a basic HTML textarea then ENTER behaves normally. Also if I load my simple editor page into firefox directly then it works fine.

I guess some interaction is occuring between CKEditor and the swing browser. (I've recently noticed that if the browser is used inside a JDialog with default button then any hit of ENTER activates the default button, so not sure where the handling of ENTER is between swing and webrenderer)

Thanks,
Rob.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文