当JavaScript取消超链接“点击”事件时,屏幕阅读器会做什么?

当JavaScript取消超链接“点击”事件时,屏幕阅读器会做什么?,javascript,hyperlink,accessibility,carousel,Javascript,Hyperlink,Accessibility,Carousel,给定下面的代码,对于使用屏幕阅读器导航的用户来说,myHyperlink.onclickJavaScript在跟随该超链接并取消事件时是否仍会执行?我的目标是让使用屏幕阅读器导航的用户直接导航到http://www.google.com因为他们根本看不到图像 <!DOCTYPE html> <html> <head> <title>Accessibility?</title> <script>

给定下面的代码,对于使用屏幕阅读器导航的用户来说,
myHyperlink.onclick
JavaScript在跟随该超链接并取消事件时是否仍会执行?我的目标是让使用屏幕阅读器导航的用户直接导航到
http://www.google.com
因为他们根本看不到图像

<!DOCTYPE html>
<html>
 <head>
     <title>Accessibility?</title>
     <script>
     window.onload = function() {
         var myHyperlink = document.getElementById("slider-nav");
         myHyperlink.onclick = function() {
             document.getElementById("about-google").style.display = "block";
             return false;
         };
     };
     </script>
 </head>
 <body>
     <div id="main">
         <a href="http://www.google.com" id="slider-nav">Google</a>
         <div id="about-google" style="display:none;">
             <a href="http://www.google.com">
                 <img src="https://www.google.com/images/srpr/logo3w.png" alt="Google logo" />
             </a>
         </div>
     </div>
 </body>
</html>

可访问性?
window.onload=函数(){
var myHyperlink=document.getElementById(“滑块导航”);
myHyperlink.onclick=函数(){
document.getElementById(“关于google”).style.display=“block”;
返回false;
};
};


在上下文中,我正在尝试使旋转木马/滑块小部件对屏幕阅读器更加友好。

无论是有视力的用户使用鼠标激活链接,还是有视力的用户使用键盘激活链接,还是有视力的用户使用键盘激活链接,浏览器行为都没有区别。在所有情况下,都会调用
onclick
处理程序,显示徽标,并取消导航。对于键盘用户(无论是否有视力),键盘焦点将保持在初始文本链接上。有视力的用户将看到新图像出现,屏幕阅读器用户将听不到任何声音,可能会疑惑为什么显然什么都没有发生

您可以自己尝试:(如果觉得有用,请捐款),然后在IE或Firefox中运行的页面上尝试(Chrome对可访问性的支持稍微滞后,但正在追赶)。对于JSFIDLE页面,在独立页面中处理结果通常比作为窗格更容易,您可以通过拉出框架URL并将其粘贴到一个新的浏览器页面中来实现这一点——在您的例子中。NVDA并不是唯一的屏幕阅读器,但它与任何用于检查基本web可访问性的屏幕阅读器一样好


(一般来说,首先不可能确定用户是否正在使用屏幕阅读器。最好的办法是编写适合所有用户的可访问HTML。)

屏幕阅读器位于浏览器顶部,这样无论屏幕阅读器是否正在运行,激活链接后都会执行代码。视力受损的用户通过提供的备选文本“看到”图像。我不清楚隐藏图像的目的是什么。也许你可以扩展一点。它是一个旋转木马/滑块-就像。“激活”真的和点击一样吗?你有传票吗?