<details>内のスポイラーは切り替わりません

100% 確信はできませんが、以下の手順で問題が再現すると思います:

  1. 新しい投稿の作成を開始する
  2. [spoiler] タグで囲んだテキストを追加する
  3. 投稿プレビュー内のテキストのぼかしを解除する。必要に応じて、ぼかしを再適用したり解除したりできることに注意してください。
  4. ぼかしがかかったテキストの下にさらにテキストを追加する。
  5. テキストがぼかされた状態で残っていた場合、一度ぼかしを解除すると、その後(または最初からぼかしが解除されていた場合)再度ぼかしを適用できなくなります。

これは投稿のプレビューだけでなく、実際の投稿でも発生する可能性があります。そこでの正確な再現手順はわかりません(ぼかしを解除してから再適用する間にさらに入力できないため)が、私がこの問題を確認した状況では、ぼかされたテキストが [details] タグ内にありました。それが関係しているかどうかはわかりません。


以下はテスト用ですが、役立つ場合と役立たない場合があります。

一部の隠しテキスト

隠しテキストの後のテキスト。

要約

さらにいくつかの隠しテキスト

隠しテキストの後のさらにいくつかのテキスト。

隠しテキストと details タグの後のさらにいくつかのテキスト。

「いいね!」 1

details タグ内にスポイラーが含まれている場合、スポイラーのトグルをオフにできないことに気づきました。

この スポイラー はオン/オフを切り替えることができます(期待どおりに動作します)。

しかし、これは動作しません。

クリックして「詳細」を開く

この スポイラー は一度しかオンにできません(オフにすることはできません)。

問題は、2番目のケースでは isInteractive 関数が true を返すことだと思います。なぜなら、detailsINTERACTIVE_SELECTOR に含まれているからです。

それを削除すれば十分だと思いますが、副作用についてはよくわかりません(@CvX さんなら知っているかもしれません)。

編集:この変更は、クリック時にGIFを停止させる ことを目的としていたようです。私たちのコミュニティでは、スポイラーと詳細を多用しているため、ぼかしの動作をより一貫性のあるものにすることが役立つでしょう。

「いいね!」 2

説明

ネタバレテキストを詳細フォルダに入れると、通常通りクリックしてぼかしを解除できますが、再度クリックしても何も起こらず、再度ぼかすことはできません。詳細フォルダを閉じて再度開いても効果はありません。ホップスコッチフォーラムでの私のこの件に関する説明でより詳しく説明しています。

実演

この詳細フォルダを例として自由に使用してください。私の正確な手順は、ホップスコッチフォーラムのトピックで説明されています。

詳細フォルダ

サンプルテキスト

再現方法

  1. 詳細フォルダを含む投稿を作成する
  2. その中にネタバレテキストを入れる
  3. フォルダを開いてテキストのぼかしを解除する
  4. ページをリロードしないとテキストを再度ぼかすことができない
「いいね!」 2

フィードバックありがとうございます。これは軽微な不便(特にトグル可能なブロック内にあるため、詳細をトグルすることでコンテンツを非表示にできるため)ですが、修正されるとさらに良くなるでしょう。
修正を試したい方がいれば、このトピックに pr-welcome を付けます。

プラグインのリポジトリはこちらです: GitHub - discourse/discourse-spoiler-alert: A plugin for discourse to hide spoilers behind the spoiler-alert jQuery plugin

しかし、これはHide Details機能の問題である可能性が高いと感じています。

Hide Details内のコンテンツは、常に期待どおりに表示(およびインタラクション)されるわけではありません。例えば、ホットリンクされた画像、リンク、動画などは表示されず、リンクのみが表示されます。

概要

https://cdn.discordapp.com/attachments/914531040297635861/1107226488534740992/1920x1080.png

https://www.youtube.com/watch?v=ipuqLy87-3A

Apex Legends pro sweet hits Predator rank with no kills to “prove how bad” Ranked is - Dexerto

「いいね!」 3

ありがとうございます!

「いいね!」 1