2 回答
TA贡献1852条经验 获得超1个赞
最简单的方法如下
$('#searchbar').on('input keydown', function (e) {
if ($('#searchbar').val().length >= 3) {
$('.child-div').show();
}
if( e.which == 13){
$('.child-div').hide();
e.target.blur();
}
})
$('#searchbar').on('focus', function (e) {
if ($('#searchbar').val().length >= 3) {
$('.child-div').show();
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<input type="text" class="form-control form-rounded rounded-pill" placeholder="Text input" id="searchbar">
<div class="child-div" style="background-color: blueviolet; width: 50%; height: 200px; display: none;">
CHILD DIV
</div>
</div>
在这里,您只需在按下回车键后执行一个模糊事件,并注册焦点事件,它会检查是否应该打开子 div
TA贡献1831条经验 获得超4个赞
您可以使用 JQuery blur() 和 focus() 事件。当用户按下回车键时,我们将以编程方式关闭框并触发输入 blur() 事件以使其取消焦点。然后注册一个 focus() 事件,只要输入是焦点,它就会显示框。
添加回答
举报