MediaWiki Diskussion:Gadget-Screenreader-Optimierung-TOC.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Einleitung zuerst vorlesen[Quelltext bearbeiten]

Dieser Teil des Screenreader-Optimierungs-Helferleins verschiebt die Einleitung von Artikeln nach oben, vor Infoboxen, Bilder, Tabellen usw. Das ist vor allem beim Einsatz von Screenreadern nützlich, da diese dann sofort mit dem relevanten Teil des Artikels beginnen, ohne dass sich blinde Benutzer umständlich an Tabellen und Bildern vorbei hangeln müssen. Allgemeine Textbausteine wie zum Beispiel Begriffsklärungs- oder Qualitätssicherungsbausteine, die den Artikel als ganzes betreffen, werden nicht verschoben.

Leider ist es aus technischen Gründen nicht möglich, diese wünschenswerte Reihenfolge von vornherein im Artikelquelltext festzulegen (bedingt durch die CSS-Eigenschaft float, für die es keine gleichwertige Alternative gibt).

Einstellungen[Quelltext bearbeiten]

Wahlweise können die Textbausteine auch ohne Ausnahme hinter den Einleitungstext und vor die erste Überschrift verschoben werden. Dazu ist die Zeile

var doNotMoveTemplateIds = [];

in die eigene common.js einzutragen. Beachte, dass dann aufgrund einer Eigenart der Vorlagen bei Löschanträgen und Qualitätssicherungen die Begründung zuerst erscheint.

Die Liste der nicht zu verschiebenden Textbausteine kann auch selbst festgelegt werden. Zum Beispiel bleiben mit der Zeile

var doNotMoveTemplateIds = ["Vorlage_Begriffskl.C3.A4rungshinweis",
  "Vorlage_Dieser_Artikel"];

nur Begriffsklärungs-Hinweise am Artikelanfang stehen, alle sonstigen Bausteine werden hinter die Einleitung verschoben. Die dazu einzusetzenden Bezeichner können den Quelltexten der jeweiligen Vorlagen entnommen werden (dort nach dem Attribut id= suchen).

Bestimmte Bausteine lassen sich wahlweise auch ganz ausblenden, so dass sie gar nicht mehr angezeigt und vorgelesen werden. Die Zeile

var deleteTemplateIds = ["Vorlage_Deutschlandlastig",
  "Vorlage_Osterreichlastig", "Vorlage_Schweizlastig"];

blendet zum Beispiel drei Bewertungsbausteine aus.

Entstehungsgeschichte dieses Gadgets[Quelltext bearbeiten]

Dieser Abschnitt wurde am 07.06.2008 von Lalü's Diskussionsseite hierher verschoben, siehe Permalink:

Hallo Lalü. Ich habe mich intensiv mit der Idee beschäftigt, die Einleitung immer vor die Infobox zu schieben. Das hat unbestreitbar Vorteile, vor allem weil der Screenreader dann sofort mit dem interessantesten Teil des Artikels beginnt. Leider existiert keine Möglichkeit, die grafische Darstellung der rechts ausgerichteten Infoboxen beizubehalten und trotzdem den ersten Absatz im HTML-Quelltext nach vorn zu holen. Die Infobox muss im Quelltext vorn stehen. Das geht einfach nicht anders.

Aber es besteht die Möglichkeit, durch ein spezielles Screenreader-Skin oder einen Zusatz in der eigenen monobook.js für Abhilfe zu sorgen, ganz ähnlich wie bei den Bearbeiten-Links, deren Reihenfolge im Quelltext auch erst durch JavaScript nachträglich korrigiert wird. Wenn du diesen Quelltext in deine monobook.js einfügst, wird der erste Absatz im Artikel ganz nach vorn geholt. Kannst du das bitte testen und mir berichten, ob das hilft? Ich würde das gern weiter verbessern und auch anderen Benutzern zur Verfügung stellen. --TM 11:39, 14. Aug. 2007 (CEST)[Beantworten]

Ich habe es mir eben mit LalüTest angeguckt und finde, daß es bei Bautzen prima funktioniert. Wenn der Einführungsteil alerdings wie bei Kassel aus mehreren Absätzen besteht, wird nur der erste nach oben verschoben, wie du ja auch schriebst. Als blinder Leser müsste man sich aber darauf verlassen können, daß zwischen Infobox und Inhaltsverzeichnis keine weiteren Abschnitte des Einführungstextes mehr stehen, um sicherzustellen, keine wichtigen Infos zu verpassen., wenn man vom Anfang der Infobox aus direkt zur nächsten Überschrift springt. Kannst du mir noch einige Seiten nennen, die ich mir angucken soll, um das Verhalten des JS bei sehr unterschiedlich gestalteten Artikeln zu testen? -- Lalü 11:50, 15. Aug. 2007 (CEST)[Beantworten]
Ich habe das Skript komplett überarbeitet und bei deinem LalüTest eingespielt. Mehrere Absätze, Listen usw. werden jetzt zusammenhängend nach vorn geholt, siehe beispielsweise FASS-Kurve. Infoboxen, Bilder, Tabellen und Wartungsbausteine schiebt das Skript nach hinten, siehe beispielsweise Atomic Hero. Einzige Ausnahme ist der Begriffsklärungsbaustein, siehe beispielsweise Vorra. Löschanträge macht das Skript ein wenig kaputt, aber da sehe ich leider keine andere Möglichkeit, siehe beispielsweise Selbstreplikation.
Offene Fragen sind also: Sollen auch Wartungsbausteine vorn stehen bleiben und wenn ja, welche? Wie tragisch ist das mit den kaputten Löschanträgen? --TM 16:34, 16. Aug. 2007 (CEST)[Beantworten]
Vielleicht bin ich ja nicht nur blind sondern auch noch blöd. Bei "Fass-Kurve" und "Atomic Hero" sehe ich keine Veränderungen in der Reihenfolge. "Worra" sieht dagegen gut aus. Begriffsklärungsbausteine und Wartungsbausteine sind interessant und sollten ruhig am Anfang stehen. Infoboxen sind für einen Screenreader sowieso Tabellen und sind zusammen mit den anderen Tabellen und Bildern eigentlich das einzig mir bislang aufgefallende störende im Einführungsbereich. Bei Kassel sieht jetzt alles prima aus. Die Taxoboxen wie etwa bei Gabunviper werden durch das Skript nicht hinter den Einführungstext verschoben. Auf der Beispielseite mit dem Löschantrag konnte ich keine Veränderung feststellen. Ich habe vorsichtshalber zwischendurch auch mal den Browsercache mit Strg+F5 geleert. Ich finde deine Bemühungen sehr gut und hoffe, daß ich dir dabei weiterhin helfen kann. -- Lalü 09:54, 17. Aug. 2007 (CEST)[Beantworten]
Lustig: Du hast die Wechseln-zu-Links ausgeblendet und mein Skript damit durcheinander gebracht. Ich habe es angepasst und jetzt funktioniert es wie gewünscht. Die Wartungsbausteine sind ein Problem. Es ist für ein Skript ziemlich kompliziert, Erwünschtes von Unerwünschtem zu unterscheiden. Aber ich bleibe am Ball. --TM 14:51, 17. Aug. 2007 (CEST)[Beantworten]
Jetzt sieht alles gut aus, mein Kompliment. Stimmt, die Löschanträge sind wirklich etwas auseinandergerissen, aber solange nichts wirklich verschwindet, passt das schon. Wenn dort nicht nur "Begründung" sondern "Begründung des Löschantrags" stehen würde, wäre diese zuerst stehende Info für Leser leichter einordbar. Vielleicht findest du ja doch noch eine Lösung dafür. Welche häufig verwendeten Wartungsbausteine gibt es denn noch? Eigentlich sind die ja in der Regel im gewissen Umfang informativ und könnten daher falls möglich gut irgendwo zwischen Einführungstext und Infoboxen/Tabellen/Bildern stehen. -- Lalü 09:51, 18. Aug. 2007 (CEST)[Beantworten]
Ich bin grade über die entstehende Gadget-Extension gestolpert. [1] Sehe ich das richtig, daß es damit irgendwann möglich sein könnte, ganz einfach und ohne Spezialkenntnisse bestimmten JS- Bzw. CSS-Code individuell für einzelne Benutzer einzustellen? Das klingt nämlich vielversprechend, weil man das vielleicht als leicht bedienbare technische Grundlage für die geplanten Verbesserungen für Menschen mit den unterschiedlichsten Einschränkungen und Bedürfnissen nutzen könnte. -- Lalü 20:29, 19. Aug. 2007 (CEST)[Beantworten]
Die Gadget-Extension klingt interessant, aber vorerst habe habe mein Skript auf die herkömliche Weise ausgelagert. Dein LalüTest wird jetzt jede Anpassung von mir sofort mitbekommen. Außerdem neu: Die meisten allgemeinen Textbausteine (QS, LA, SLA, BKL usw.) bleiben am Anfang des Artikels stehen. LA und QS werden nicht mehr auseinander gerissen. Bewertungsbausteine verschiebe ich aber weiterhin nach unten, da sich diese oft nicht auf die Einleitung sondern nur auf einzelne Abschnitte des Artikels beziehen.
PS: Es gibt jetzt auch eine Liste mit Textbausteinen, die mein Skript komplett aus dem Artikel löschen soll, damit sie gar nicht mehr vorgelesen werden (Beispiel). Beide Listen (zu löschende und nicht zu verschiebende Textbausteine) kann jeder Nutzer in seiner monobook.js selbst modifizieren. --TM 14:59, 21. Aug. 2007 (CEST)[Beantworten]

Ich habe alle obenstehenden Beispielseiten nochmal getestet und das Ergebnis für gut befunden. Könnten eigentlich auch außerhalb des Einführungsteils ungewollte Nebeneffekte auftreten oder brauche ich da nicht drauf zu achten? Bezieht sich das Skript nur auf den Artikel-Namensraum? Erkennt das Skript auch die gesetzte wechsel_zu-Option und passt sich dementsprechend an? (Ist allerdings nicht wirklich wichtig, da ich diese Möglichkeit immer deaktiviert habe und andere blinde Nutzer dies wahrscheinlich ebenfalls tun werden.) Ich bin gespannt auf die angekündigte Hilfe und die Optionen im Skript. Mir wäre es vorerst aber lieber, wenn wir keine Bausteine ausblenden, da Anfänger den Sinn und die Verwendung dieser Bausteine sonst nicht verstehen können. Als Fortgeschrittener kann man ja später die nicht gewollten Bausteine nachträglich ausblenden. Die Hilfeseiten "allgemeine Textbausteine" und "Bewertungsbausteine" sind aufgrund ihrer Tabellenform mit einem Screenreader übrigens leider nur schwer verständlich und wegen fehlender Überschriften auch nicht navigierbar. Ich nehme allerdings an, daß man in Tabellen sowieso keine Überschriften verwenden kann. Dankbaren Gruß von Lalü 09:57, 22. Aug. 2007 (CEST)[Beantworten]

Die Wechseln-zu-Option wird natürlich beachtet. Nach unten hin hört das Skript bei der ersten Überschrift auf. Wenn ein Artikel keine Überschriften hat, werden Infoboxen und Textbausteine schlimmstenfalls bis ganz nach unten zu den Kategorien verschoben, siehe zum Beispiel Approximant. Offene Fragen wären:
  • Momentan arbeitet das Skript nur im Artikelnamensraum. Soll das konfigurierbar sein?
  • Wenn man einen Artikel bearbeitet und die Vorschau betrachtet, wird das Skript nicht aktiv. Ich denke, das ist sinnvoll, da sonst die Vorschau verwirrenderweise eine andere Reihenfolge als der Quelltext hätte.
  • Welche Bausteine sollen standardmäßig vor der Einleitung stehen bleiben? Ich habe jetzt alle allgemeinen Textbausteine in die Liste der Ausnahmen eingefügt (auch URV etc.), aber die Bewertungsbausteine nicht (Lückenhaft, NurListe, Überarbeiten etc.).
  • Ausblenden werde ich standardmäßig nichts. Das muss jeder selbst konfigurieren. --TM 11:29, 22. Aug. 2007 (CEST)[Beantworten]
Ich denke, daß wir das fürs erste genauso lassen können, wie es ist. Das Skript sollte nur im Artikel-Namensraum greifen; falls ich aber später noch andere Einsatzgebiete finde, lässt sich das wahrscheinlich leicht ändern. Super, nach Revolus guter Arbeit für die en.WP ist dein Skript nun das erste vorzeigbare Ergebnis unseres BIENE-Projekts für die deutsche Wikipedia! Auf die Ergebnisse von weiteren eventuellen Anpassungen für die Spezialseiten wie bei der blindenspezifischen Beobachtungsliste bin ich sehr gespannt. -- Lalü 14:13, 23. Aug. 2007 (CEST)[Beantworten]

Moin Lalü, magst du deine gesammelten Kenntnisse und Ergebnisse auch bei der BIENE unterbringen? Liebe Grüße — Lecartia Δ 14:41, 23. Aug. 2007 (CEST)[Beantworten]

Diskussion[Quelltext bearbeiten]

Diskussionen finden auf der Diskussionsseite Wikipedia Diskussion:BIENE/Screenreader statt.