首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在按下enter键和模糊事件后,chrome会触发两次更改事件

在按下enter键和模糊事件后,chrome会触发两次更改事件
EN

Stack Overflow用户
提问于 2013-04-22 12:51:00
回答 1查看 2K关注 0票数 1

我有一个文本<input>,当它被归档时,我想要触发更改事件。change事件通过以下方式触发: 1.在文本字段外单击(使其失去焦点)或2.按enter键(使文本字段保持焦点)

我不想让文本字段成为焦点,所以我使用.blur() jQuery来实现:

代码语言:javascript
运行
复制
$(document).on("change", "input.quantity", function()
{   
    alert('Changed!');
    $(this).blur(); 
});

当我在Firefox中测试它时,一切都很顺利,但当我在chrome中测试它时,改变事件触发两次,我得到两个警报。

只有在按enter键时才会发生这种情况。

如果删除$(this).blur();,更改事件只会触发一次。

代码是here

这可能是一个chrome bug,但是如果有人知道如何解决这个问题,那将是一个很大的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-22 14:51:15

请尝试以下代码,这不是一个正确的解决方案,但可以解决您面临的问题:

代码语言:javascript
运行
复制
$(document).on("change", "input.quantity", function(e)
{
    alert('Changed!');
    var $ele = $(this);
    setTimeout(function() {$ele.blur();}, 50);
});

更新的fiddle:http://jsfiddle.net/rqFAH/1/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16139631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档