首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >输入键上的IE触发按钮

输入键上的IE触发按钮
EN

Stack Overflow用户
提问于 2014-01-20 16:02:08
回答 1查看 767关注 0票数 2

我在同一页上有一个<button> (不是type="submit)和一个<input type="text"/>

它们不在表单中,并且按钮在输入层次上有很多级别。

文本输入侦听keyup事件,并执行与按钮的操作无关的自定义操作。

但是,在IE10上,当按下Enter键时,会触发按钮,而文本输入永远得不到键。Chrome、Firefox和Opera (最新的所有3款)都很好。

:active状态被触发时,我使按钮变红。当您专注于输入时,按钮不会改变,但是按回车后,按钮会变成红色。

在按钮上设置tabindex="-1"不会改变任何事情。

我找到的解决办法是:

  • 收听输入的keydownpreventDefault()。看来keyup太迟了。
  • 将输入放在表单容器中。

我不喜欢两者,尤其是第二个。还有什么我能做的吗?

希望这是有人遇到的事。

编辑:这里有一个工作示例:http://plnkr.co/edit/LhmTpk5TpWDjOJUD18Bm?p=preview

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-01-20 16:06:49

不幸的是,我认为preventDefault()是最好的选择。

IE的早期版本(请记住发布您正在测试的版本!)因为不兼容而臭名昭著(具有讽刺意味的是,通过对HTML模式的极其严格的解释)。

编辑:很抱歉出现了“答案”,在我达到50 %的声誉后,才允许我发表评论。

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

https://stackoverflow.com/questions/21238604

复制
相关文章

相似问题

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