Javascript 在Internet Explorer中每隔单击一次链接都不起作用

Javascript 在Internet Explorer中每隔单击一次链接都不起作用,javascript,html,internet-explorer,Javascript,Html,Internet Explorer,我注意到,当在IE中单击href设置为javascript函数的链接时,第一次单击会起作用,但第二次单击有时不会起作用。第三个可行,第四个不行。换句话说,IE只会在每次单击时触发javascript函数。如果在单击之间长时间暂停,则每次都会触发该功能。但当你点击的速度稍微快一点时,它会跳过每一次点击。还有其他人注意到这种行为吗?我在Firefox中没有得到相同的行为 以下是一些示例代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transi

我注意到,当在IE中单击href设置为javascript函数的链接时,第一次单击会起作用,但第二次单击有时不会起作用。第三个可行,第四个不行。换句话说,IE只会在每次单击时触发javascript函数。如果在单击之间长时间暂停,则每次都会触发该功能。但当你点击的速度稍微快一点时,它会跳过每一次点击。还有其他人注意到这种行为吗?我在Firefox中没有得到相同的行为

以下是一些示例代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>Test</title>
        <script type="text/javascript">
        var count = 0;
        function doClick()
        {
            count++;
            document.frm.COUNTER.value = count;
        }
    </script>
</head>
<body>
    <form name="frm" action="">
        <input name="COUNTER" value="0"/>
        <a href="javascript:doClick();">Click Here</a>
    </form>
</body>
</html>

试验
var计数=0;
函数doClick()
{
计数++;
document.frm.COUNTER.value=计数;
}
非常缓慢地单击,每次计数器都会递增。即使以稍微快一点的速度点击,它也会跳过点击。IE6/7/8中控件的onclick和onmousedown事件也会发生这种情况


这是一个问题的原因,因为该应用程序是一个销售点系统,我们正在为触摸屏实现屏幕上的按键。因为键入速度太快而多次按链接/按钮/键是不可接受的。

据我所知,IE的事件处理程序似乎比其他浏览器慢

我在Firefox、Chrome和IE8中进行了测试。IE肯定跑得慢了/没有点击

我没有安装IE9,但它应该比IE8更好

---最新答案---

IE分别处理onclick和dblclick。这意味着,如果您快速单击两次,这将注册为单个dblclick事件

另一方面,Chrome将注册2个onclick事件和一个dbl click事件


因此,混合单击和双击单个元素可能会导致不同浏览器的行为截然不同。

您可能会遇到双击事件

<a href="" onclick="doClick();return false;" ondblclick="doClick();return false;">


这应该可以解决问题。

您是否考虑过使用现有的Javascript屏幕键盘?好的一点-请看-浏览器的行为似乎更为一致-我收回这一点-当您双击时,Chrome会记录3次点击计数,即没有。@Colin:在Chrome中运行良好,但不使用dblclick。听起来带触摸屏的销售点系统将在一个可预测的平台上。话虽如此,
似乎在这两方面都能发挥更好的作用。谢谢!这确实是一个问题,双击在不同浏览器上的处理方式不同。FF始终会触发onclick事件,即使双击也是如此。IE仅在双击的第一次单击时触发onclick。同意。这也是我在Firefox上看到的。谢谢