jquery-rails 2.1.X で IE6 を使った際の不具合と対処

Rails 3.2.X で jquery-rails 2.1.X を使った際に

<%= link_to 'サンプル', hoge_path, :remote => true %>

のように remote を指定して ajax で通信するリンクが IE6 で動作しない問題が発生していました。

本流の方にはマージされていないのですが、解決策を発見してくれた方がいらっしゃったのでリンクを張っておきます。

https://github.com/mataki/jquery-ujs/commit/b29b48bc4e88d7dff4a1e2ad06fc181902987136

これをどのように使うかと言うと、インストールした jquery-rails gem のディレクトリを探し

vendor/assets/javascripts/jquery_ujs.js

の中身の該当箇所を直接修正します。development 環境の場合はリロードすると修正済のファイルが読み込まれますが production 環境や assets:precompile などでコンパイルされた JavaScript ファイルが作成されている場合はそちらが優先して読み込まれるため、改めてコンパイルをやり直してください。

当方の環境では Window8 + IE10 〜 IE6(シミュレータ)までで動作を確認しています。