Javascript 在jquery失去焦点时隐藏元素
我正在为键盘用户建立一组符合性链接。目标是仅在第一个链接的目的地聚焦后显示第二个跳过链接(用户单击“跳过链接并到达href目的地)。以下代码旨在处理此问题,但在第一个链接没有聚焦时不会隐藏第二个跳过 jQuery:Javascript 在jquery失去焦点时隐藏元素,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在为键盘用户建立一组符合性链接。目标是仅在第一个链接的目的地聚焦后显示第二个跳过链接(用户单击“跳过链接并到达href目的地)。以下代码旨在处理此问题,但在第一个链接没有聚焦时不会隐藏第二个跳过 jQuery: if ($('#anchor').focus) { $('#skip-link-tabs').show(); }else { $('#skip-link-tabs').hide(); } <span id="anchor" tabindex="0" style
if ($('#anchor').focus) {
$('#skip-link-tabs').show();
}else {
$('#skip-link-tabs').hide();
}
<span id="anchor" tabindex="0" style="margin-right:10px">Main</span>
<a id="skip-link-tabs" href="#toTabs" style="margin-right:10px; color:black;">To tabs</a>
<span id="toTabs" tabindex="0" style="margin-right:10px">Tabs</span>
html:
if ($('#anchor').focus) {
$('#skip-link-tabs').show();
}else {
$('#skip-link-tabs').hide();
}
<span id="anchor" tabindex="0" style="margin-right:10px">Main</span>
<a id="skip-link-tabs" href="#toTabs" style="margin-right:10px; color:black;">To tabs</a>
<span id="toTabs" tabindex="0" style="margin-right:10px">Tabs</span>
Main
标签
此代码已最小化,仅显示相关部分,因为这是一个相当大的页面。尝试检查
focus()
而不是focus尝试检查focus()
而不是focusfocus
不是jQuery对象的属性。如果是,它仍然不起作用,因为代码不会被事件更新。因此,您需要做的是检查focus
事件,例如:
$('#anchor').focus(function() {
$('#skip-link-tabs').show();
});
你可以通过这样做来隐藏它
$('#anchor').focusout(function() {
$('#skip-link-tabs').hide();
});
结帐
也许更好的办法是:
var skipLinkTabs = $('#skip-link-tabs');
$('#anchor').focus(function() {
skipLinkTabs.show();
}).focusout(function() {
skipLinkTabs.hide();
});
(链接+缓存jQuery元素)focus
不是jQuery对象的属性。如果是,它仍然不起作用,因为代码没有被事件更新。因此,您需要做的是检查focus
事件,例如:
$('#anchor').focus(function() {
$('#skip-link-tabs').show();
});
你可以通过这样做来隐藏它
$('#anchor').focusout(function() {
$('#skip-link-tabs').hide();
});
结帐
也许更好的办法是:
var skipLinkTabs = $('#skip-link-tabs');
$('#anchor').focus(function() {
skipLinkTabs.show();
}).focusout(function() {
skipLinkTabs.hide();
});
(链接+缓存jQuery元素)以下代码使用焦点显示链接,并在失去焦点时隐藏模糊
$(“#锚定”).focus(函数(e){
$(“#跳过链接选项卡”).show();
});
$(“#锚”).blur(函数(){
$(“#跳过链接选项卡”).hide();
});
主要
选项卡
以下代码使用焦点显示链接,并在失去焦点时隐藏模糊
$(“#锚定”).focus(函数(e){
$(“#跳过链接选项卡”).show();
});
$(“#锚”).blur(函数(){
$(“#跳过链接选项卡”).hide();
});
主要
Tabs
这是focus()
,而不是focus
@Ionut你好。现在检查分辨率我可能必须是一个函数,例如$(“#锚”)。focus(function(){…});
@putvande这就是问题所在,如果你想将此设置为答案,我想向上投票并选择作为答案。这是focus()
,而不是焦点
@Ionut您好。现在检查分辨率我可能必须是一个函数,例如$('#锚点')。焦点(函数(){…})
@putvande这就是问题所在,如果你想将此设置为答案,我想投票并选择作为答案。我只是注意到评论中已经讨论了这一点,我的道歉我只是注意到评论中已经讨论了这一点,我的道歉