Dank des Glücks habe ich ein funktionales Paar Augen. Wenn es darum geht, Webseiten zu durchqueren, ist dies so etwas wie ein Segen, da mein Fokus von einem Teil der Seite auf einen anderen verschoben wird, um meine extra-okularen Muskeln nicht mehr als halb unbewusst zusammenzubringen und meine Augäpfel einen Bruchteil ihres Umfangs zu drehen.
Obwohl mein visueller - und daher kognitiver - fokussierte sich nun geändert haben könnte, weiß die Benutzeroberfläche selbst nicht, dass meine Aufmerksamkeit gedreht hat. Zumindest erst, wenn ich anfange, physisch mit der neu untersuchten Region zu interagieren. Anders ausgedrückt ist das Drehen meiner Augäpfel ein nicht aufgezeichnetes Ereignis.
Hier liegt ein sehr häufiges, aber häufig nicht berücksichtigter Barrierefreiheitsproblem: Wenn ich meine Augen (und meine Maushand nicht zu Punkt) verwende, wie konzentriere ich mich auf etwas, um dann damit zu interagieren? Die Antwort, wie Sie sicher wissen, ist der programmatische Fokus. Es ist jedoch nicht so einfach, nur „fokussierbare“ Elemente in unsere Entwürfe einzubeziehen. Manchmal ist es nicht der Benutzer, sondern die Schnittstelle im Namen des Benutzers, die den Fokus zwischen verschiedenen Bereichen bewegen muss. Dies erfordert eine absichtliche Fokusmanagement des Entwicklers.
Für die Zugänglichkeit ist das Verwalten von Fokus in vielen der einfachsten von JavaScript-gesteuerten interaktiven Widgets von wesentlicher Bedeutung. Die korrekte Verwendung ist jedoch fast unmöglich, mit automatisierten QA -Tools zu testen. Deshalb möchte ich Sie heute ein paar einfache Beispiele durchführen.
In diesem Beispiel lade ich Sie vor, sich vorzustellen, dass Sie einen „verbesserten“ Link der Navigation "erweitert" haben, damit Sie, anstatt abrupt zum Zielfragment des Links zu springen über eine JavaScript -Scrolltop -Animation. Das Wichtigste für die Zugänglichkeit bei der Verwendung dieser Technik ist die Notwendigkeit, die Standardfunktion des Elements zu überschreiben.
event<span>.preventDefault();</span>
Auf diese Weise fordern Sie dem Browser an, um jeden Preis zu vermeiden, was Standard, erwartet oder interoperabel durchführt. Sie sagen den Link nicht zum link. In der Tat ist der einzige Weg, um sicherzustellen, dass der Link den Benutzer tatsächlich korrekt zum Seitenfragment führt, um JavaScript auszuschalten. Nun, dann.
durch einfaches Verknüpfen mit einem Seitenfragment - wie man es bei JavaScript ausgeht - fokussiert der Browser im Wesentlichen dieses Fragment. Hier basiert der Bildschirmleserausgang und die Tastaturinteraktion. Durch Animieren des Scrolltops findet keine solche Fokussierungsaktion statt, was bedeutet, dass die Ausgabe von Bildschirmleser und die Tastaturinteraktion vom Bereich der Seite, die nicht mehr angezeigt wird, fortgesetzt wird. Das ist nicht gut.
Das MittelHinweis: Dank Patrick und anderen in den Kommentaren, dass dies auf die Tatsache hinweist, dass dies "-1" anstelle von "0" für den Tabindex-Wert verwenden sollte, den wir jetzt korrigiert haben.
Unsere zweite Aufgabe ist es, die Methode JavaScript Focus () in den Rückruf der Animation aufzunehmen und sicherzustellen, dass das Fragment nach
<span><span><span><section</span> id<span>="section1"</span> tabindex<span>="-1"</span>></span> </span> ... <span><span><span></section</span>></span></span>
Schließlich ist es eine gute Idee, unseren Sub-Page-Standort in der URL aufzunehmen, wie es geschehen wäre, indem sie einfach mit dem Fragment verlinken (z. B. http: // my-Site/#§ 1). Auf diese Weise können wir die Adresse als Link zum spezifischen Abschnitt kopieren (d. H. Wir können "Deep Link"). Fügen Sie die folgende Zeile ein, nachdem Focus () stattgefunden hat:
<span>document.getElementById('section1').focus();</span>
Natürlich würden Sie "§ 1" durch eine Variable ersetzen, die auf dem HREF des entsprechenden Links basiert, abzüglich der #.
<span>window.location.hash = 'section1';</span>
Das Ergebnis
<span><span><span><a</span> href<span>="#whatever"</span>></span>scroll to section 'whatever'<span><span></a</span>></span></span>
Beachten Sie, dass wir das Tabindex -Attribut in unserem JavaScript hinzufügen. Jetzt, da wir die Abschnitte (Fragmente) konzentrieren, auf die wir scrollen, ist unser wahrgenommener Ort mehr als nur visuell. Das heißt, sollte ich die Registerkartenschlüssel drücken, nachdem ich mich nach einem neuen Abschnitt umgezogen habe, werde ich das nächste fokussierbare Element in diesem Abschnitt konzentrieren. Das Hyperlink -Lesen "heydonworks.com" im folgenden Beispiel.
event<span>.preventDefault();</span>
Hätte wir den Abschnitt 1 nicht fokussiert, hätte das Drücken der Registerkarte Taste das nächste Element nach dem Link zur Anstiftung konzentriert, das das Ansichtsfenster auf unseren Navigationsblock zurückspringen würde. Mit anderen Worten, Tastaturbenutzer wären wieder auf Platz eins.
<span><span><span><section</span> id<span>="section1"</span> tabindex<span>="-1"</span>></span> </span> ... <span><span><span></section</span>></span></span>
Hier ist ein weiteres kleines Beispiel. Stellen wir uns so aus, Aus Gründen des Arguments fordert dieser Dialog den Benutzer auf, die durch die Schaltfläche angestellte angehende Aktion zu bestätigen oder zu stornieren.
Um das Öffnen dieser Schaltfläche zugänglich zu machen, sollten wir uns () den Dialog auf die gleiche Weise konzentrieren, wie wir das Seitenfragment im letzten Beispiel konzentriert haben. Mit JQueryui wäre der erste der Schaltflächen des Dialogs (in unserem Fall "Bestätigung") fokussiert. Andere Implementierungen konzentrieren sich auf den Dialogbehälter. In beiden Fällen werden Benutzer programmgesteuert an den richtigen Ort .
<span>document.getElementById('section1').focus();</span>
Die Frage lautet: "Was fokussiert sich, wenn der Dialog schließt?" Wenn wir nichts tun, würde der neu versteckte Dialog unbedingt den Fokus verlieren, aber nichts würde seinen Platz einnehmen. In vielen Benutzeragenten würde dies bedeuten, dass die
standardmäßig fokussiert ist und die Benutzer durch das Dokument waten, um ihren Platz wieder zu finden.Es wäre logischer, das Element, das den Dialog geöffnet hat, neu auszusetzen. Dies ist einfach zu tun, indem Sie einfach den DOM -Knoten im Speicher speichern oder einen Marker für die spätere Verwendung schreiben, wie folgt:
<span>window.location.hash = 'section1';</span>
Am Ende der Close () -Methode des Dialogfelds würden wir uns dann nur auf das ursprüngliche Element konzentrieren:
<span><span><span><a</span> href<span>="#whatever"</span>></span>scroll to section 'whatever'<span><span></a</span>></span></span>
Die meisten Bildschirmleser würden nach der Wiedereinfokus -Schaltfläche den Titel der Seite und dann die fokussierte Schaltfläche ankündigen. Auf diese Weise wissen Sie, wo Sie sind. Ein Beispiel für ein Dialogfeld, das diese Methode verwendet, ist zum Testen verfügbar, falls Sie sich wünschen.
Es ist ein häufiger Fehler, eine fortschreitende Verbesserung mit der Zugänglichkeit zu verbinden. Zu denken, dass sichergestellt wird, dass sich etwas für die Arbeit mit JavaScript ausgeschaltet hat (wie es in diesem Fall in diesem Fall wäre), bedeutet es „zugänglich“. Sicher, es macht es für diejenigen ohne JavaScript zugänglich, aber die meisten Benutzer der Tastatur und der Bildschirmleser interagieren mit Hilfe von JavaScript wie jeder andere mit Ihren Anwendungen. Der Trick besteht darin, JavaScript auf eine Weise zu verwenden, die die unterschiedlichen Verhaltensweisen und Eingaben aller Benutzer und alle von ihnen verwendeten assistiven Technologien respektiert.
Eine weitere Sache: Wenn Sie jemals an einer einseitigen Anwendung geladen sind, die mit beispielsweise Ember.js oder AngularJS erstellt wurde, grep die Codebasis für die JavaScript -Focus () -Methode. Solche Anwendungen schreiben die Navigation mit „Ansichten“ vollständig um. Dynamische Wiederaufbauten der einzigartigen Seite. Ohne ein sorgfältiges Fokusmanagement kann der Wiederaufbau des DOM so schnell die Zugänglichkeit vermasseln. Wenn Ihr Grep weniger als ein paar .fokus -Instanzen findet, gibt es möglicherweise viel zu tun.
Wie kann ich während des Studiums konzentriert bleiben? Lernen. Dies bedeutet einen ruhigen, gut beleuchteten Raum mit minimalen Ablenkungen. Es ist auch hilfreich, Ihre Studiensitzungen in überschaubare Brocken zu unterteilen, in der Regel 25 bis 30 Minuten, gefolgt von einer kurzen Pause. Diese Technik ist als Pomodoro -Technik bekannt. Darüber hinaus kann das Festlegen klarer, erreichbarer Ziele für jede Studiensitzung Sie motiviert und fokussiert halten.
Wie wirkt sich körperliche Aktivität auf den Fokus und die Konzentration aus? zahlreiche Vorteile für das Gehirn. Es erhöht den Blutfluss, wodurch die Gesundheit und die kognitiven Funktionen des Gehirns verbessert wird. Übung freisetzt auch Endorphine, die dazu beitragen können, die Stimmung zu verbessern und Stress zu verringern, wodurch Fokus und Konzentration verbessert werden.
Ja, Meditation kann den Fokus und die Konzentration erheblich verbessern. Es trainiert Ihr Gehirn, um sich auf den gegenwärtigen Moment zu konzentrieren und Ablenkungen zu ignorieren. Regelmäßige Praxis kann zu einer verbesserten Aufmerksamkeitsspanne und besseren kognitiven Funktionen führen.
Das obige ist der detaillierte Inhalt vonFokus lernen (). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!