VoiceOver historically conveyed any element with a click handler as "clickable" if it was not on an element where the click interaction was understood by the role type... (e.g. not button, link, several inputs) ... so if a heading was javascript-clickable, it might be acting as a button, and VO would speak something like "foo, heading, clickable"
However, about 15 years ago, event delegation on the body element became a more common pattern that technically makes all web elements "clickable." WebKit counteracted this by not exposing the "clickable" status on body event delegation, and fixed it via heuristics about 10-12 years ago
Mozilla Accessibility engineers are noticing this web pattern now in Firefox, so I shared some more history, and recent updates in this comment. https://bugzilla.mozilla.org/show_bug.cgi?id=1679991#c10
WebKit Engineers are open to standardizing heuristic behavior like this in an Evergreen or Living spec, as long as browser engines can have the leeway to respond to user need quickly, when some new web pattern emerges that causes interaction problems for the user...
I expect this particular "clickable ancestor delegate" issue is non-controversial, however, another similar issue that is more controversial is WebKit's heuristic for layout lists.... (Sorry for the Twitter link which is now-unthreaded unless you log in.)
VoiceOver historically conveyed any element with a click handler as "clickable" if it was not on an element where the click interaction was understood by the role type... (e.g. not
button,link, several inputs) ... so if a heading was javascript-clickable, it might be acting as a button, and VO would speak something like "foo, heading, clickable"However, about 15 years ago, event delegation on the body element became a more common pattern that technically makes all web elements "clickable." WebKit counteracted this by not exposing the "clickable" status on body event delegation, and fixed it via heuristics about 10-12 years ago
Mozilla Accessibility engineers are noticing this web pattern now in Firefox, so I shared some more history, and recent updates in this comment. https://bugzilla.mozilla.org/show_bug.cgi?id=1679991#c10
WebKit Engineers are open to standardizing heuristic behavior like this in an Evergreen or Living spec, as long as browser engines can have the leeway to respond to user need quickly, when some new web pattern emerges that causes interaction problems for the user...
I expect this particular "clickable ancestor delegate" issue is non-controversial, however, another similar issue that is more controversial is WebKit's heuristic for layout lists.... (Sorry for the Twitter link which is now-unthreaded unless you log in.)