ie9.jsはまだ良いコードです。IEが間違っているものを修正して、多くの作業を行います。
ご指摘のとおり、これは古いコードですが、引き続き機能します。
人々がそれをあまり使用しないかもしれない理由:
- ie9.jsは、単一の大きなポリフィルです。それはそれをかさばって遅くします。特定の機能を修正するだけでよい場合は、やり過ぎかもしれません。いくつかの小さなパッチの方が良いかもしれません。
- ie9.jsが行う修正の大部分は、IE6用です。IE6をサポートするために煩わしいサイトはますます少なくなっているため、そのコードはすべて冗長です。繰り返しになりますが、いくつかの小さなパッチの方が良い場合があります。
- ie9.jsはもはや積極的に維持されていません。それはそれがやろうとしている仕事をするのでそれは問題ありませんが、他の新しいパッチは、それらが持つかもしれない利点と同様に新しいので、より多くの関心を生み出しています。
代替として言及したツール(modernizr、html5shiv、CSS3Pie)のうち、実際にはie9.jsとのクロスオーバー機能はありません。(この回答も参照してください)
ただし、ie9.jsの代わりになる可能性のある最近のツールを次に示します。
- jQuery-または他の同様のライブラリの1つ。これはIEの穴を修正するだけではありませんが、IE6でも、jQueryコードを記述している場合は、ブラウザー間の互換性が重要になるため、ie9.jsが提供するJavascriptパッチはほとんど必要ありません。
- Selectivzr-これはおそらくメインのものです。これは、IEがサポートしていないほとんどの不足しているCSSセレクターのポリフィルです。ie9.jsはさらにいくつか(つまり、IE6および7のリレーショナルセレクター)を実行しますが、Selectivzrは既存のセレクターエンジン(jQuery、Prototypeなどの選択)を使用します。つまり、リソースを使用するため、非常に高速で軽量です。すでにロードされています。
最近のブラウザーのJSコードの大部分がjQueryを使用して記述されていることを考えると、これにより、ie9.jsのような包括的なIEフィクサーパッチの必要性が実質的にゼロになります。
ただし、jQueryまたは同様のライブラリを使用していない場合でも、ie9.jsが非常にうまく機能することがあります。