首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打开Fancybox-2后,在fancybox窗口中发送焦点

打开Fancybox-2后,在fancybox窗口中发送焦点
EN

Stack Overflow用户
提问于 2013-09-26 16:06:15
回答 1查看 9.4K关注 0票数 4

为了便于访问,我尝试在Fancybox窗口打开后发送焦点。

我在Fancybox的容器上将tabindex添加到0,并在其上发送焦点。这不管用。

代码语言:javascript
复制
afterLoad: function() {
    this.group[this.index].content.attr('tabindex','0');
    this.group[this.index].content.focus();
}

我使用NonVisual桌面访问( NVDA ) http://www.nvaccess.org/进行测试,但Chrome也可以显示焦点。

感谢您的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-27 01:26:56

这在很大程度上取决于contenttype,但这应该可以(使用inlineajaxhtml内容)

代码语言:javascript
复制
$(".fancybox").fancybox({
    afterShow: function () {
        $(this.content).attr("tabindex",1).focus()
    }
});

它应该同样适用于单个或图库元素。

参见 (使用Chrome使其变得明显)

备注:我建议你使用tabindex > 0来避免IE的问题(如果你关心跨浏览器的兼容性)

编辑:这里是一个包含不同内容类型的示例:,其中focus在图像或iframes上不太明显

EDIT 2:更一般的东西是关注.fancybox-inner选择器,而不管内容的类型,比如

代码语言:javascript
复制
$(".fancybox-inner").attr("tabindex",1).focus();

查看更新的,但不知道这是否能满足您的需求

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19022658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档