Ajax IME の javascript 側を大幅に更新しました http://ajaxime.chasen.org/ Firefox でキャレットの位置を参照するという blog にコメントをいただきました。 Firefoxでは、textarea とまったく同じスタイルを持った見えない pre 要素を作り、その中に現在のキャレットの論理位置に pre タグで | をつっこんで、その pre tag の絶対位置から逆算する方法でキャレット位置が取得できるようです。激しく回りくどいですが、これを使って Firefox での動作がスムーズになりました。ありがとうございます。 あと、XmlHTTPRequest から JSONP にプロトコルを変えました。その結果、ime.js を読み込むだけでそのサイトのすべての textare と inputbox が AjaxIME 経由で入力できるよう