Javascript div父级上的preventDefault阻止输入子级获得焦点
我有一个包含文本输入的div。在该div的mousedown上,我需要阻止默认值,但是当我单击输入以键入一些文本时,由于div(父)阻止默认值,它不会获得焦点 HTMLJavascript div父级上的preventDefault阻止输入子级获得焦点,javascript,jquery,Javascript,Jquery,我有一个包含文本输入的div。在该div的mousedown上,我需要阻止默认值,但是当我单击输入以键入一些文本时,由于div(父)阻止默认值,它不会获得焦点 HTML 有可能解决这个问题吗?测试e.target,如果它是输入,不要preventDefault()您可以添加e.stopPropagation()用于输入。它将阻止事件传播到父级div $(.test”).on('mousedown',函数(e){ e、 预防默认值(); }); $(“.test input”).on('mous
有可能解决这个问题吗?测试
e.target
,如果它是输入,不要preventDefault()
您可以添加e.stopPropagation()代码>用于输入。它将阻止事件传播到父级div
$(.test”).on('mousedown',函数(e){
e、 预防默认值();
});
$(“.test input”).on('mousedown',函数(e){
e、 停止传播();
});代码>
但我很想知道为什么会取消焦点?@RajaprabhuAravindasamy-因为这是单击输入的默认行为。其他答案有效,但我选择此解决方案,因为当输入获得焦点后,我单击父div,它会自动触发输入上的模糊,而其他解决方案(测试e.target)在我点击输入时不会触发模糊。谢谢
<div class="test">
<input type="text" class="input1" />
</div>
$(".test").on('mousedown', function(e){
e.preventDefault();
});