我知道当用户按下回车键时,浏览器通常会自行处理自动更正/大写/等。但我正在使用contenteditable属性并对“enter”进行一些特殊处理,这需要我在用户按Enter键时使用evt.preventDefault()。由于我在我的监听器中使用了preventDefault(),因此移动safari会将自动更正的气泡打开,并且看起来非常时髦/无法使用。是否有任何替代方法(可能使用JS来触发事件)来解除气泡或触发正常行为而不必取出preventDefault?
我不想摆脱自动更正功能,因为它对我的应用程序很重要。
答案 0 :(得分:0)
应该有示例代码!但我认为你谈的是这样的:
$("#myForm").submit(function(event) {
event.preventDefault();
// Do other stuff
});
所以我很确定你可以手动触发.blur
- 事件,这可能触发自动完成功能:
$("#myForm #myInput").blur();
如果这个答案有误,请提供示例代码 - 并非Stackoverflow上的每个人都是魔术师。
答案 1 :(得分:0)
我会说它很容易用焦点设置, 与之前使用提交的答案相反,自动行为将继续自动纠正..
$("#MyInput").focus(function(event){
event.preventDefault();
});
$("#MyInput").blur(){ // do events you want on focus lost.. from input.. :)
});
我认为这样做..