这是一个已知的问题,可以通过使用JavaScript代码进行解决。在aria-live区域更新时,可以先将aria-describedby属性设为空,然后再重新设置它。具体实现方法如下:
HTML:
JavaScript: var liveRegion = document.getElementById('live-region'); liveRegion.setAttribute('aria-describedby', ''); //先将aria-describedby设为空 liveRegion.textContent = 'Updated content'; //更新aria-live区域内容 liveRegion.setAttribute('aria-describedby', 'live-region-description'); //重新设置aria-describedby属性,以避免重复
这种做法可以确保在aria-live区域第一次更新时aria-describedby属性不会重复。