Jump to content

Extension:Details

From mediawiki.org
This page is a translated version of the page Extension:Details and the translation is 100% complete.
Příručka k rozšířením MediaWiki
Details
Stav rozšíření: stabilní
Implementace Značka
Popis Sémantický, prohlížečem podporovaný sbalitelný obsah v článcích MediaWiki s použitím tagů ‎<details>, ‎<summary>
Autoři Adam Demasi (kirbylover4000diskuse)
Nejnovější verze 1.2.1 (2026-03-10)
Zásady kompatibility Větev main udržuje zpětnou kompatibilitu.
MediaWiki >= 1.39.0
  • $wgDetailsMWCollapsibleCompatibility
<details>, <summary>
Licence GNU General Public License 3.0 nebo novější
Stáhnout
README
Příklad The Apple Wiki

Details poskytuje sémantický, prohlížečem podporovaný sbalitelný obsah v článcích MediaWiki pomocí tagů ‎<details>, ‎<summary>.

Klíčový rozdíl oproti tradičnímu přístupu mw-collapsible spočívá v tom, že prohlížeč chápe, že detaily jsou stále obsahem – částí stránky, o kterou by uživatel mohl mít zájem. Když je prohlížeč požádán o přechod na obsah nalezený v elementu <details>, tento element se automaticky rozbalí. To zahrnuje kotvy, vyhledávání na stránce a zvýraznění s funkcí scroll-to-text (v závislosti na podpoře prohlížeče). Naproti tomu se nedoporučuje používat mw-collapsible u obsahu, který by měl být uživateli přístupný, protože obsah je ve sbaleném stavu pro tyto funkce prohlížeče považován za sémanticky neviditelný, a proto může být skryt i před vyhledávači.

Detaily se snaží zachovat kompatibilitu se stávajícími wiki skripty/styly, které mohou očekávat názvy tříd a chování třídy mw-collapsible.

Instalace

  • Ke stažení soubor/y a vložte je do adresáře pojmenovaného Details ve vaší složce extensions/.
  • Na konec vašeho souboru LocalSettings.php přidejte následující kód:
    wfLoadExtension( 'Details' );
    
  • Yes Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.

Použití

Jednoduše použijte ve svém wiki obsahu standardní tagy <details> a <summary>. Prvek ‎<details> obaluje celou sbalitelnou oblast a prvek ‎<summary> funguje jako rozbalovací prvek.

Například:

<details class="wikicollapse">
<summary>Nějaký šíleně dlouhý obsah</summary>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore ...
</details>

Všechny HTML parametry, které MediaWiki podporuje u prvků ‎<div>, jsou podporovány i u prvků ‎<details> a ‎<summary>. Kromě toho můžete ve výchozím nastavení použít ‎<details open> k rozšíření obsahu.

Ve výchozím nastavení není k dispozici žádný styl. Ve většině případů chcete použít class="wikicollapse". To platí pro styly podobné wikitable .

Rozšíření Details posouvá nativní podporu prohlížeče pro třídu ‎<details> dále tím, že přidává kompatibilitu s třídou jquery.makeCollapsible , lépe známou pod názvem třídy mw-collapsible.. Stávající styly a skripty postavené na tomto by měly většinou fungovat. Také obdržíte standardní skládací přepínací tlačítko [rozbalit] a [sbalit] a jeho umístění v DOMu lze přizpůsobit pomocí třídy mw-collapsible-toggle-placeholder .

Články se sbalitelným obsahem budou přidány do kategorie sledování "Stránky používající tag Details parser".

Rozšíření parametrů a šablon

Protože Details je rozšíření tagu , je rozbaleno před šablonami a funkcemi parseru . Pokud tedy chcete upravit parametry u tagů ‎<details> nebo ‎<summary>, musíte použít funkci parseru {{#tag:...}} :

{{#tag: details
 | {{#tag: summary
  | Nějaký šíleně dlouhý obsah
  | class={{{summaryclass|my-summary-class}}}
 }}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore ...
 | class={{{detailsclass|my-details-class}}}
}}

Nezapomeňte, že při použití {{#tag:...}} se obsah nachází před parametry.

Protože se zdá být obtížné volitelně specifikovat atribut open pomocí tohoto přístupu, od verze 1.1 můžete specifikovat hodnoty "false" pro negaci (uzavření) ve výchozím nastavení. Šablona by to mohla použít takto:

{{#tag: details
 | ...
 | open={{#ifeq: {{{expand|}}} | expand | yes | no}}
}}

Vícedílný režim

V mnoha případech je užitečné zabalit tabulku, konverzaci nebo jiný velký segment stránky do sbaleného bloku. To je obvykle možné s mw-collapse, protože to lze provést s ‎<div class="mw-collapse">...‎</div> nebo syntaxí tabulky , které lze rozdělit do více šablon. Wikipedia frequently uses {{Collapse top}} and {{Collapse bottom}} to achieve this. To však není možné s rozšířeními tagů kvůli pořadí, ve kterém je MediaWiki analyzuje.

Prvek Details rozšiřuje element ‎<details> o atribut part. Lze jej použít následovně:

<details part="head" class="wikicollapse" />
<summary>Nějaký šíleně dlouhý obsah</summary>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore ...
<details part="foot" />

Zdá se, že tento trik není kompatibilní s rozšířením Parsoid , které nesprávně "opraví" fragmenty HTML vytvořené tímto rozšířením.

Konfigurace

V LocalSettings.php lze nastavit následující možnosti konfigurace:

Proměnná Výchozí Popis
$wgDetailsMWCollapsibleCompatibility true Řídí, zda Details načítá CSS a JavaScript pro vylepšení tagů ‎<details> a ‎<summary>.

Díky tomu se chovají podobně jako třída mw-collapsible a zavádí třídu wikicollapse, která má styl podobný wikitable. Pokud je tato možnost zakázána, použije se výchozí styl a chování prohlížeče.

Kompatibilita

Podporuje MediaWiki 1.39 a novější.

Pro fungování sbalitelného obsahu je vyžadována podpora prohlížeče:

Plně podporováno

Všechny prohlížeče od roku 2017 jsou plně podporovány. Konkrétně je pro implementaci přepínacího tlačítka pro sbalení/rozbalení vyžadována HTMLDetailsElement událost přepínač.

  • Chrome 36+ (37+ na Androidu)
  • Firefox 49+
  • Safari 10.1+ (iOS 10.3+)

Automatické rozbalování

Novějším přírůstkem webové platformy je "skrytý, dokud nebude nalezen". To umožňuje skrýt prvek, ale stále je vidět pro funkce, jako je vyhledávání na stránce a ukotvení (hash) navigace. Prohlížeč zobrazí prvek, pokud se v něm nachází relevantní obsah. Toto je žádoucí funkce pro skryté části článku.

Od verze 1.1 podporují rozšíření polyfilly funkci "skryté, dokud nebude nalezeno" pro hashové kotvy. Podpora polyfillingu pro vyhledávání na stránce a zvýraznění textu pravděpodobně nebude možná.

Částečně podporováno

Tyto prohlížeče nepodporují událost přepnutí, ale elegantně přejdou na používání vestavěné funkce přepínání prohlížeče. Kliknutím kamkoli v řádku ‎<summary> se přepne jeho obsah.

  • Chrome 10+ (2011)
  • Safari 6.0+ (2012, iOS 6.0+)

Bez podpory

Tyto prohlížeče vůbec nepodporují ‎<details> a ‎<summary>. Obsah obou tagů bude zobrazen tak, jak je.

  • Internet Explorer
  • EdgeEdge založený na HTML (18 a starší)
  • Opera založená na Prestu (12 a starší)
  • Opera Mini

Související odkazy