为什么单击按钮会触发焦点?

时间:2014-05-17 04:09:55

标签: javascript jquery html

为什么点击按钮也会触发focus事件?

如果我有这个

$('button').on('click', function(e){
   console.log('This was a ' + e.type); 
});
$('button').on('focus', function(e){
   console.log('This was a ' + e.type); 
});

和HTML

<button>Click me</button>

当我点击按钮时,两个事件都会触发......为什么?

http://jsfiddle.net/PACXn/

2 个答案:

答案 0 :(得分:1)

因为<button>始终触发焦点事件(当您单击它时)。您可以在http://api.jquery.com/focus/

阅读
  

&#34;焦点事件在获得焦点时发送给元素。这个事件   隐含地适用于有限的一组元素,例如形式   元素(<input><select>等)和链接(<a href>)。&#34;

答案 1 :(得分:1)

当该按钮处于活动状态时,会关注按钮。当您单击它时,您也将其激活。

您可以使用mouseenter事件来模拟类似人类的事件:

$('button').on('mouseenter', function(e){
   console.log('This was a ' + e.type); 
});