department-of-veterans-affairs / va.gov-team

Public resources for building on and in support of VA.gov. Visit complete Knowledge Hub:
https://depo-platform-documentation.scrollhelp.site/index.html
282 stars 203 forks source link

Addition of "Back to Top" Option | Covid Pages | English, Spanish, Tagalog #22294

Closed SKasimow closed 3 years ago

SKasimow commented 3 years ago

Background

When pages such as our Covid-19 related pages are long and encompass multiple scrolls to get from the top to the bottom, it becomes tedious to scroll back up through screens and screens of content. To help users navigate more efficiently we would like to add the "Back to Top" shortcut button and enable users to quickly navigate to the top of the page.

Issue Description

As a product manager, I would like to provide a "back to top" link for the following pages:

Covid-19 english https://www.va.gov/health-care/covid-19-vaccine/ Covid-19 spanish Covid-19 tagalog

Corona FAQ - english https://www.va.gov/coronavirus-veteran-frequently-asked-questions/ Corona FAQ - spanish Corona FAQ - tagalog

Storybook: https://design.va.gov/storybook/?path=/docs/components-back-to-top--default-story

A "Back to Top" link should appear on the lower right-hand corner of each page.

The appearance of a Back to Top option should be delayed until after users scroll 2+ pages AND indicates that they want to scroll up (e.g., move the scroll bar up, flick up on the page) so that the button appears only when it is most likely needed, without covering up important parts of the screen the rest of the time.

Once the button appears, it should remain stationary.

Q - are size, placement and design standardized in Storybook?

Front end tasks

Acceptance Criteria

Appendix

Ensure your code changes are covered by E2E tests (expand) - Add E2E tests if none exist for this addition/change. - Update existing E2E tests if this code will change functionality. - Include axe checks, including hidden content
Run axe checks using the Chrome or Firefox browser plugin (expand) - Ensure no heading levels are skipped. - Ensure all buttons and labeled inputs use semantic HTML elements. - Ensure all buttons, labeled elements and images are identified using HTML semantic markers or ARIA roles. - Ensure form fields have clearly defined boundaries or outlines. - Ensure form fields do not use placeholder text. - Ensure form fields have highly visible and specific error states.
Test for color contrast and color blindness issues (expand) - All text has appropriate contrast.
Zoom layouts to 400% at 1280px width (expand) - Ensure readability and usability are supported when zoomed up to 400% at 1280px browser width - Ensure no content gets focused offscreen or is hidden from view.
Test with 1 or 2 screen readers (expand) - Ensure the page includes a skip navigation link. - Ensure all links are properly descriptive. - Ensure screen reader users can hear the text equivalent for each image conveying information. - Ensure screen reader users can hear the text equivalent for each image button. - Ensure screen reader users can hear labels and instructions for inputs. - Ensure purely decorative images are not announced by the screenreader.
Navigate using the keyboard only (expand) - Ensure all links (navigation, text and/or image), form controls and page functions can be reached with the tab key in a logical order. - Ensure all links (navigation, text and/or image), form controls and page functions can be triggered with the spacebar, enter key, or arrow keys. - Ensure all interactive elements can be reached with the tab key in a logical order - Ensure all interactive elements can be triggered with the spacebar, enter key, or arrow keys. - Ensure focus is always visible and appears in logical order. - Ensure each interactive element has visible focus state which appears in logical order.

How to configure this issue

SKasimow commented 3 years ago

Linking to PW ticket: https://github.com/department-of-veterans-affairs/va.gov-team/issues/23878