Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

172
Views
Accesibilidad Web. window.speechSynthesis vs rol "alerta"

Para anunciar inmediatamente un error de control/entrada, tengo 2 opciones:

  1. agregue HTMLElement al documento con el rol 'alerta' y mensaje de error. NVDA lee alert. [errorMessageHere]

 const el = document.createElement('div'); el.setAttribute('role', 'alert'); el.className = 'visually-hidden'; el.textContent = 'Some message here'; document.body.append(el);
 .visually-hidden { position: absolute; height: 1px; width: 1px; top: 0; left: 0; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); }

  1. Utilice window.speechSynthesis.speak . NVDA anuncia [errorMessageHere]

 const speakObj = new SpeechSynthesisUtterance('Some message here'); window.speechSynthesis.speak(speakObj)

Lo que realmente noto es que en NVDA puedes deshabilitar texto a voz y mostrar el visor de voz. El primer caso se registrará en el visor de voz, pero el segundo caso, no. NVDA anuncia texto directamente cuando se abre NVDA, incluso si el texto a voz está deshabilitado.

Preferiría usar window.speechSynthesis.speak en lugar de crear HTMLElements adicionales para cada caso cuando se deban anunciar algunos detalles/errores, pero no estoy seguro de si es la alternativa correcta del rol 'alerta' ya que window.speechSynthesis.speak no lo es registrado por NVDA en absoluto (pero solo anunciado).

¿Podría ayudarme a entender cuál es la mejor manera de ser anunciado/leído por el lector de pantalla?

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!