
kate522andClaude Opus 5
5afa7ab9df
fix(submit): show body placeholder on first load and restore caret on blank clicks
两个前台投稿编辑器的缺陷,根因都在占位符的实现方式:
1. 首次加载不显示占位符,输入一个再删掉才出现。
旧实现往正文插了一个 data-mce-bogus 占位段落,而 TinyMCE 在
setContent(studio 初始化时必调)与清理 bogus 元素时会把它移除。
2. 光标在块级结构里时,点击正文空白处无法落回正文。
占位段落占着首行、且 pointer-events:none,点击落不到可编辑元素上;
正文以表格 / 代码块这类结构块结尾时也没有可承载光标的段落。
改为 front-submit-editor-basics.js(替换 front-submit-placeholder.js):
- 占位符改成 body 属性 + content CSS 的 ::before,正文 DOM 不含占位节点;
- 点击空白处(事件目标是 body)且光标不在普通文本里时,补一个可编辑尾段
并把光标放进去;
- 两份 content CSS 让 html/body 撑满编辑区,studio 的 syncEditorHeight
以编辑器声明高度为下限,空正文时 iframe 不会缩成一行。
新增 tests/widget-system/submit-placeholder-behavior.test.cjs(jsdom 跑真实插件)。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-11-09 20:38:02 +08:00
..
2026-10-29 20:31:39 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-03 16:36:45 +08:00
2026-11-03 16:36:45 +08:00
2026-11-01 20:05:04 +08:00
2026-11-05 21:09:40 +08:00
2026-11-03 16:58:05 +08:00
2026-11-03 16:58:05 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-05 23:51:33 +08:00
2026-08-29 15:50:04 +08:00
2026-09-24 21:13:24 +08:00
2026-11-03 23:31:28 +08:00
2026-11-01 20:05:04 +08:00
2026-08-30 20:38:25 +08:00
2026-11-02 00:06:54 +08:00
2026-11-03 17:31:42 +08:00
2026-11-01 20:05:04 +08:00
2026-10-29 19:16:03 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-09 20:38:02 +08:00
2026-11-02 00:06:54 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-06 14:53:23 +08:00
2026-11-01 20:05:04 +08:00
2026-10-30 21:57:46 +08:00
2026-11-09 18:10:19 +08:00
2026-11-05 21:09:40 +08:00
2026-11-04 16:04:24 +08:00
2026-11-01 20:05:04 +08:00
2026-11-09 19:44:54 +08:00
2026-11-09 19:44:54 +08:00
2026-10-29 22:21:01 +08:00
2026-11-02 00:06:54 +08:00
2026-11-05 18:02:51 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-05 22:19:50 +08:00
2026-11-05 21:41:09 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-10-31 14:18:01 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-04 17:41:48 +08:00
2026-11-04 18:33:37 +08:00
2026-11-01 20:05:04 +08:00
2026-11-09 19:44:54 +08:00
2026-11-09 19:44:54 +08:00
2026-11-02 00:06:54 +08:00
2026-10-31 14:03:57 +08:00
2026-11-02 00:06:54 +08:00
2026-11-04 19:37:56 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-09 15:03:50 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-05 17:50:56 +08:00
2026-11-06 22:30:08 +08:00
2026-11-02 00:06:54 +08:00
2026-11-02 00:06:54 +08:00
2026-11-06 22:30:08 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-06 14:53:23 +08:00
2026-11-02 19:50:24 +08:00
2026-11-02 19:50:24 +08:00
2026-11-02 00:06:54 +08:00
2026-09-04 22:53:33 +08:00
2026-10-29 19:16:03 +08:00
2026-11-04 16:04:24 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-03 16:09:46 +08:00
2026-11-03 15:56:52 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-03 16:48:38 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-09 20:38:02 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-06 14:53:23 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-04 17:27:51 +08:00
2026-11-04 17:17:49 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-02 00:06:54 +08:00
2026-11-02 00:06:54 +08:00
2026-11-02 14:06:52 +08:00
2026-11-02 00:06:54 +08:00
2026-11-01 20:05:04 +08:00
2026-11-01 20:05:04 +08:00
2026-11-03 15:56:52 +08:00