我有一个 div,其中包含一个 iframe(其中又包含一些锚元素)和一个锚标签(关闭按钮)。使用键盘导航时,如果“关闭”按钮是最后一个活动元素,则 div 应该被聚焦。
但对我来说,焦点总是放在 div 内的 iframe 上。我想把重点放在 div 上。
<a href="javascript:" class="clicker">click to open</a>
<div id="wOverlay" style="height: 307px; width: 645px; display: none;">
<span style="position:absolute;left:-1500px;top:0;width:1;height:1;overflow:hidden;">Beginning of dialog content</span>
<iframe scrolling="no" frameborder="0" src="https://www.google.com" title="Quick Look - Opens a simulated dialog">
</iframe>
<a id="overlayClose" class="MultiBoxClose" href="javascript:void(0)">Close</a>
脚本:
$('.clicker').bind('click',function(){
$('#wOverlay').attr('tabIndex',-1);
$('#wOverlay').show().focus();
});
$(document).bind('keydown', function(e){
e = e || window.event;
if(e.keyCode == 9) {
if($(document.activeElement).hasClass('MultiBoxClose')){
$('#wOverlay').focus();
}
}
});
请提供任何解决方案