如题,
<body>
<button id="btn">222</button>
</body>
<script type="text/javascript">
// (function($){
// $("#btn").click(function(e){
// console.log(e.keyCode);
// console.log(event);
// // $("#btn").unbind("click");
// });
// }(jQuery));
var btn = document.getElementById("btn");
btn.onclick = function(e)
{
alert(2);
e.preventDefault();
}
</script>
描述:第一次点击button之后,再按回车,返回的event的type始终是click,这是为什么?有什么办法可以屏蔽使回车不触发click事件么?求大神帮忙解决,谢谢!
加个e.target.blur();让按钮失去焦点
btn.onclick = function (e) { alert(2); e.target.blur(); e.preventDefault(); }
试了下,果真是可以的!谢谢!我还有个问题,就是为什么回车会响应button绑定的click事件呢?十分感谢
@未来的未未来的来: 仔细观察一下,点击按钮时,按钮获得了焦点(focus),blur方法可以让他失去焦点