强制用户在当前选项卡中打开 link WCAG2.0 可访问
Is forcing a user to open a link in the current tab WCAG2.0 accessible
我们继承了一个有 10 年以上历史的网站的维护,其中有几个 link 强制在当前选项卡中打开 link。您不能右键单击 link 并在新选项卡中打开,甚至不能复制并粘贴 url,因为它使用 javascript 和一个 doPostBack(不知道为什么,旧的,旧的代码)。
无论如何,我知道这是糟糕的用户体验,因为它本质上是一个结果列表,你肯定想在新标签页中打开它们,而且尝试停止默认浏览器行为也是疯狂的。
但我想知道 WCAG2.0 中是否有任何具体说明我们不能这样做?我正在尝试改变它,但糟糕的用户体验是不够的。然而,WCAG 会通过它。有谁能指出网络内容可访问性指南中明确指出网站不应该这样做的内容吗?
非常感谢。
如果 link 本身没有 href
属性,则它不可通过键盘导航 (SC 2.1.1)。但是,使用doPostBack
让我觉得这是ASP.NET 1.0,它在每个href
中塞满了一堆脚本,所以键盘用户可能完全可以访问它。
否则,没有。 WCAG 2.0 中没有特定的成功标准似乎可以解决您的问题。有两个 可以 进行一些争论,但有人可以很容易地争辩说他们不适合:
- Success Criterion 2.4.4: Link Purpose (In Context): Level A:这与link中的文字有关,但是,如果你能使用户期望能够在新的tab/window中打开,那么link 文本应说明因 $ 原因而被禁止。
- Success Criterion 3.2.4: Consistent Identification: Level AA:这表示网页中以某种方式表现的事物应该被一致地识别。您可能会争辩说,由于站点中的所有其他 links 都允许 links 在新的 tabs/windows 中打开(如果那是 trye),那么这些 links 需要识别他们不会那样做。
在每种情况下,如果您的案例成功,解决方案就是更多的文字。这不是你想要的。除非你可以争辩说更多的文本是丑陋的/难以实现的/等等,然后使用 that 来证明允许 links 在新的 tabs/windows 中打开是合理的.
但是要达到这一点有很多依赖性(即,对 SC 申请的支持)。
总的来说,我同意你概述的场景是糟糕的用户体验。
在我看来,这是一个失败的成功标准3.2.5 Change on Request at level AAA. Of course, the more common case goes in the opposite direction where links force new tabs or windows without notifying the user, which is documented in common failure 22。但是,我肯定会争辩说,通过强制更改当前选项卡中的上下文,用户可能没有请求,因为他们在 link 上单击鼠标中键或按 CTRL+Enter 来创建一个新选项卡,这是 3.2.5 的失败。
我们继承了一个有 10 年以上历史的网站的维护,其中有几个 link 强制在当前选项卡中打开 link。您不能右键单击 link 并在新选项卡中打开,甚至不能复制并粘贴 url,因为它使用 javascript 和一个 doPostBack(不知道为什么,旧的,旧的代码)。
无论如何,我知道这是糟糕的用户体验,因为它本质上是一个结果列表,你肯定想在新标签页中打开它们,而且尝试停止默认浏览器行为也是疯狂的。
但我想知道 WCAG2.0 中是否有任何具体说明我们不能这样做?我正在尝试改变它,但糟糕的用户体验是不够的。然而,WCAG 会通过它。有谁能指出网络内容可访问性指南中明确指出网站不应该这样做的内容吗?
非常感谢。
如果 link 本身没有 href
属性,则它不可通过键盘导航 (SC 2.1.1)。但是,使用doPostBack
让我觉得这是ASP.NET 1.0,它在每个href
中塞满了一堆脚本,所以键盘用户可能完全可以访问它。
否则,没有。 WCAG 2.0 中没有特定的成功标准似乎可以解决您的问题。有两个 可以 进行一些争论,但有人可以很容易地争辩说他们不适合:
- Success Criterion 2.4.4: Link Purpose (In Context): Level A:这与link中的文字有关,但是,如果你能使用户期望能够在新的tab/window中打开,那么link 文本应说明因 $ 原因而被禁止。
- Success Criterion 3.2.4: Consistent Identification: Level AA:这表示网页中以某种方式表现的事物应该被一致地识别。您可能会争辩说,由于站点中的所有其他 links 都允许 links 在新的 tabs/windows 中打开(如果那是 trye),那么这些 links 需要识别他们不会那样做。
在每种情况下,如果您的案例成功,解决方案就是更多的文字。这不是你想要的。除非你可以争辩说更多的文本是丑陋的/难以实现的/等等,然后使用 that 来证明允许 links 在新的 tabs/windows 中打开是合理的.
但是要达到这一点有很多依赖性(即,对 SC 申请的支持)。
总的来说,我同意你概述的场景是糟糕的用户体验。
在我看来,这是一个失败的成功标准3.2.5 Change on Request at level AAA. Of course, the more common case goes in the opposite direction where links force new tabs or windows without notifying the user, which is documented in common failure 22。但是,我肯定会争辩说,通过强制更改当前选项卡中的上下文,用户可能没有请求,因为他们在 link 上单击鼠标中键或按 CTRL+Enter 来创建一个新选项卡,这是 3.2.5 的失败。