Skip to content

Conversation

AnnMarieW
Copy link
Collaborator

As reported on the forum, components with event listeners can cause issues with screen readers.

https://community.plotly.com/t/how-to-remove-events-from-dash-html-components-to-avoid-misinterpretation-by-screen-readers/70477

This PR adds a disable_n_clicks prop to all html components, giving the ability to remove the event listener.

By default, n_clicks will be enabled on any html component that has an id. If n_clicks is not used in a callback for that component, the event listener can be removed by setting disable_n_clicks=True`

For example:

  • No event listener:
    html.Div()
    html.Div(id="my-id", disable_n_clicks=True)

  • onClick event listener:
    html.Div(id="my-id")

(re-created clean pull request without the botched merge commits from #2370)

@AnnMarieW AnnMarieW changed the title re-create pr#2370 add disable_n_clicks prop to html components Jan 17, 2023
Copy link
Collaborator

@alexcjohnson alexcjohnson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💃 Thanks @AnnMarieW - and @T4rk1n thanks for the earlier reviews 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants