我想将WAI-ARIA aria-hidden
支持与jQuery的.toggle()方法配对使用。
所以,给定<p id="myElement">你好</p>
$('#myElement').toggle()
会隐藏该元素,并设置aria-hidden="true"
:
<p id="myElement" style="display: none;" aria-hidden="true">你好</p>
再次执行相同的$('#myElement').toggle()
脚本将显示(切换)该元素,并设置(切换)aria-hidden="false"
:
<p id="myElement" style="display: block" aria-hidden="false">你好</p>
我可能想要使用该方法的完整函数,大概是这样:
$('#myElement').toggle(
if ($this.css('display')==='none'){
$this.prop('aria-hidden', 'true')
}
else
{
$this.prop('aria-hidden', 'false')
}
)
什么是扩展
.toggle()
以同时切换 aria-hidden
状态的最佳性能解决方案?
hidden
属性与.toggle()
配对使用。 - Jeromy Frenchdisplay:none
这个习惯用法已经非常成熟,任何可行的辅助工具都需要理解它。在某些假设的未来场景中,HTML5 的 hidden 可能是更好的选择 - 它的优点是不依赖于 CSS,但即使它也有一些怪癖(例如不应该用它来隐藏选项卡)。aria-hidden 的一个很好的使用示例是当一个灯箱弹出到前景时,页面的其余部分可见但被变灰;aria-hidden 可以作为一种方式来表明“用户实际上无法阅读这个内容,所以将其视为隐藏”。 - BrendanMcK.toggle()
添加HTMLhidden
属性。 - Jeromy French