我有一个a
,当它悬停时,在其中显示一个div
。里面那div
是一个input(type="text")
。当用户悬停在a
上时,div仍然可见。但是,问题是当他们键入input
字段时,如果鼠标未在a
或div
上,则div
将变为隐藏状态,并且input
停止接收输入。当输入具有焦点时,保留Div的可见性
我怎样才能设置它,以便只要input
有焦点,div
将保持可见?
这是a fiddle,它解释了它好一点。
我有一个a
,当它悬停时,在其中显示一个div
。里面那div
是一个input(type="text")
。当用户悬停在a
上时,div仍然可见。但是,问题是当他们键入input
字段时,如果鼠标未在a
或div
上,则div
将变为隐藏状态,并且input
停止接收输入。当输入具有焦点时,保留Div的可见性
我怎样才能设置它,以便只要input
有焦点,div
将保持可见?
这是a fiddle,它解释了它好一点。
做这样的:
<a>
<div class="hidden">
<input type="text" />
</div>
</a>
$("input")
.on("focus", function(){
$("div").removeClass("hidden");
})
.on("blur", function(){
$("div").addClass("hidden");
});
编辑:
的input:focus
解决方案是干净多了,除了因为它不会在IE7或以下工作(这对你来说有希望无关紧要)。
你的解决方案是好的,但你应该使用添加/删除classname,造成模糊后,显示:none可能会覆盖:hover css规则,并且永不再显示直到页面刷新 –
好点。我已经更新了我的答案。 –
该解决方案适用于我更复杂的结构。谢谢! –
此处的邮政编码也请 – Phlume
你可以在输入上使用焦点状态,在css中它的功能可能http://jsfiddle.net/7TS62/1/ –
@GCyrillus,这似乎工作,但如何适应它一个更复杂的结构? http://jsfiddle.net/7TS62/2/ –