2011-10-30 114 views
0

请看看这个网站 - >http://vanityclaire.com/(如果它在未来的变化,这是一个侧面滚动网站),并尝试用TAB浏览(不要按Enter键,就标签)。在第一部分标出所有内容后,您会注意到焦点更改为另一部分时,它会混淆:您会看到两部分中的一半。键盘辅助

我该如何让用户能够通过一节来选项卡?

我知道我可以为最后一项(无论是锚点还是输入)设置模糊属性以将焦点放在菜单上的第一项上......这样,用户将不会选择到另一个部分。 ..但是这意味着用户会“陷入”页面,并且无法通过地址栏选项卡。

有没有办法将焦点发送到地址栏?有没有window.locationbar.focus();或类似的东西,和$(windows).focus();也没有帮助...

任何人都可以想到一个很好的解决方案呢?


请注意我不想阻止用户使用按键导航...我只是希望自己的网站不会落空,因为这(我能想到的如何解决)和用户不要被困...提前,球员

感谢,

Óscar 

回答

1

对于它的价值,有这种类型的侧滚轮的一堆其他的相关问题:如果用户的窗口大足够的,或者如果他们缩小,或点击背景并向右拖动,其他页面可以变得可见。此外,由于它们是“可见的”(只是滚动),屏幕阅读器可能会一次读出整个页面,而不是仅显示当前页面。

虽然这可能会解决所有这些问题:将其他页面区域设置为display:none或visibility:hidden,直到需要它们。 (visibility:hidden可能最适合这种情况,因为它不会影响布局。)这可以防止它们意外滚动到视图中,阻止屏幕阅读器读取它们,并防止它们被选中。 Tabbing会跳过,这正是你想要的。

因此,要从区域A过渡到区域B,使区域A到B可见,滚动并将焦点移动到区域B,然后使除B之外的所有区域都不可见。

+0

这非常聪明! 我花了整整一个早上试图想出一个解决方案,你不仅解决了我目前的问题,而且解决了那些问题! 非常感谢你veru! :d –