8

通常、ユーザーがEnterキーを押すと、ブラウザーは自動修正/大文字/小文字などを独自に処理することを知っています。しかし、私は contenteditable 属性を使用しており、ユーザーが Enter キーを押したときに evt.preventDefault() を使用する必要がある "enter" で特別な処理を行っています。リスナーで preventDefault() を使用しているため、モバイル サファリはオートコレクト バブルを開いたままにし、かなりファンキーな外観/使用不能になります。preventDefault を使用せずにバブルを閉じたり、通常の動作をトリガーしたりする別の方法 (おそらく JS を使用してイベントを発生させる) はありますか?

私のアプリケーションにとって重要なので、オートコレクト機能を取り除きたくありません。

4

2 に答える 2

0

サンプルコードがあるはずです!しかし、あなたは次のようなことを話していると思います。

$("#myForm").submit(function(event) {
    event.preventDefault();
    // Do other stuff
});

したがって、.blurそのオートコンプリート機能を起動できる -event を手動で起動できると確信しています。

$("#myForm #myInput").blur();

この回答が間違っている場合は、サンプル コードを提供してください。Stackoverflow の全員が魔法使いというわけではありません。

于 2013-08-12T14:07:29.807 に答える
0

自動送信で機能する以前の回答とは対照的に、フォーカスを設定すると簡単だと言いますが、自動修正は引き続き行われます..

$("#MyInput").focus(function(event){
    event.preventDefault();
});
$("#MyInput").blur(){ // do events you want on focus lost.. from input.. :)
});

これでいけると思います..

于 2013-08-13T11:39:30.960 に答える