可以输入嵌套的鼠标悬停注释,但无法显示

你好,

Discourse 支持嵌套的鼠标悬停注释:

Hier ein Text^[eine Mouseover-Note^[eine Mouseover-Mouseover-Note].]

渲染效果如下:

Hier ein Text[1]

当我的鼠标悬停在“[1]”上时,会弹出一个包含文本“eine Mouseover-Note[1]”的提示框。提示框内的“[1]”也呈现为蓝色,但当我将鼠标移上去时,其背后隐藏的信息并未显示。

我认为这是一个可用性方面的缺陷,因为它向撰写者暗示了嵌套鼠标悬停注释是可行的,但实际上用户无法访问嵌套注释背后的信息。

从可用性角度提出的解决方案建议:

  • 使嵌套的鼠标悬停注释真正显示其内容,或者:

  • 不允许嵌套——这样:

    Hier ein Text^[eine Mouseover-Note^[eine Mouseover-Mouseover-Note].]
    

    将被渲染为:

    Hier ein Text[2]

    (即嵌套不会生成嵌套注释,而是按字面打印输入的代码:将鼠标悬停在外层注释上会显示一个提示框,内容为“eine Mouseover-Note^[eine Mouseover-Mouseover-Note].”)

祝好!


  1. eine Mouseover-Note[1]. ↩︎

  2. eine Mouseover-Note^[eine Mouseover-Mouseover-Note]. ↩︎

3 个赞

你好 @dreieck,感谢你撰写了这份详尽的报告。

遗憾的是,你提出的两个建议不仅实施起来相当困难,还可能导致潘多拉魔盒般的无限嵌套问题。在我看来,嵌套脚注在用户体验方面并不理想,因此不应被允许。

因此,我选择了第三种方案,即移除所有嵌套脚注。

我知道这可能不是你期望的结果,但至少它解决了假装功能正常但实际上无法使用的问题。

如果你认为这项功能确实有价值,我建议你在这个现有的功能请求中投上一票,并提出相同的需求。

你好,

为了弄清楚:

为什么我的第二个建议(不解析嵌套注释,而是原样输出)比你在你链接的拉取请求中的建议(移除任何嵌套注释)更成问题呢?

1 个赞

从技术角度来看,这样做更困难,而且正如我所说,我认为这从一开始就不是一个好的用户体验。既然如此,如果他们最终会被粘贴在一起,为什么不干脆把所有内容都放在一个笔记里呢?

好的!

我主要考虑到那些 盲目照做 的人,他们根本不会查看渲染后的结果。

3 个赞