Diagrams.net (draw.io) 格式面板中 textarea 的奇怪行为

问题描述

我在使用 diagrams.net webapp 时遇到了一个非常奇怪(和阻塞)的问题。

我正在尝试在格式面板中添加一些节点。我在此面板中创建了一个新选项卡并在其中添加了一些新输入。 有文本输入、复选框输入和文本区域。

但这种行为绝对不是预期的。 对于 text & cb 输入,一切正常,但 textareas 的行为......至少很奇怪:

  1. 该字段无法通过鼠标单击获得焦点(请记住,单击适用于其他输入)。设置焦点的唯一方法是使用 JS focus() 方法
  2. 无法通过鼠标选择标记内的文本。如果元素具有焦点,则可以更新文本。而且,即使可以更改文本,文本光标也无法从文本末尾移动。
  3. Textarea 框的大小不可调整。右下角的箭头可以调整它的大小,我添加了“调整大小”值以确保但该功能不会禁用但我不能。但 !如果我将属性设置为“禁用”,那么我可以调整框的大小。不幸的是,我不能禁用 textarea,因为我想把它放进去,因为我需要在里面写。

我暂时无法向您展示代码(这只是使用 document.createElement 创建的新节点),但您可以轻松测试:转到 drawio webapp 并在加载 web 应用程序时使用用于在格式面板中添加新 textarea 节点的开发人员工具(带有“.geFormatContainer”类的 div):元素不能用鼠标聚焦,其中的文本不可选择,只要未设置“禁用”属性,框就不能调整大小.

我在组件中添加一个点击监听器来检查点击是否做了某事并且它做了,但它没有把焦点放在元素上(document.activeElement 说 body 是焦点 -_-)所以我认为有mxgraph 中的一些东西,它避免了元素的经典行为。但是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)