如何获取活动时移动的输入元素的单击事件?

时间:2012-07-10 07:58:17

标签: javascript javascript-events

我的网站有输入按钮,当它们为“:active”时会移动1px。 并且,如果我点击一个边框,我无法捕捉到点击事件,因为它移动了一点。

这是一个例子。 您无法获得点击事件。

HTML:

<input type="button" value="Click Me!">

CSS:

input{
  width: 100px;
  height: 50px;
}
input:active{
  position: relative;
  top: 50px;
  left: 100px;
}

jQuery的:

$(function() {
  $('input').on('click', function() {
    alert('You caught me!');
  });
});

DEMO:

http://jsfiddle.net/duwYv/

2 个答案:

答案 0 :(得分:0)

您可以尝试使用mousedown代替clickhttp://jsfiddle.net/duwYv/6/

或者,您可以在点击后使用jQuery移动输入:http://jsfiddle.net/duwYv/8/

答案 1 :(得分:0)

当您按下鼠标按钮时,active上发生mousedown事件。您正在尝试处理点击完成后触发的onclick事件

在您的情况下,“完全点击”永远不会发生。我不确定您的问题,但是如果您想要查看消息,请在按下鼠标按钮时将代码更改为:

$('input').on('mousedown'