我有以下代码:
<div data-type="nameHolder">
<input data-type="name" disabled="">
</div>
我的想法是保持输入禁用,只有当你双击它时才启用它。但是,由于在禁用元素上未检测到点击事件,因此我使用的是 holder div。这在 Chrome 上工作正常,但在 Firefox 上不行。知道如何解决吗?
最佳答案
由于禁用元素不会触发事件,您可以使用 div 作为输入的包装器并将事件处理程序附加到此 div。当您双击 wrapper div 时,启用输入并隐藏 wrapper div。
$('.wrapper').dblclick(function(){
$(this).prev('input').attr('disabled', false);
$(this).hide();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-type="nameHolder">
<input data-type="name" disabled="">
<div class="wrapper" style="position:absolute; top:0;left:0;right:0;bottom:0"></div>
</div>
关于javascript - Firefox 没有在周围的 div 上注册点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45343577/