Enquire.js をレガシー ブラウザで動作させようとしています。ドキュメントのディープサポートメソッドを使用しています:
Modernizr.load([
{
test: window.matchMedia,
nope: "media.match.min.js"
},
"enquire-2.0.0.min.js",
"plugins.js", // jquery plugins
"main.js" // enquire-triggered functions + general code
]);
これに関する問題は、initializr.com の Modernizr+Respond を使用しているため、テストは常にパスすることです。これにより、IE8/9 の enquire.js で JS エラーが発生します。
Respond.js を削除してプレーンな Modernizr を使用するだけで、テストが失敗し、Media.match が読み込まれ、JS エラーが解決されます。ただし、IE8 では Media Query のサポートが失われます。
すべてを連携させるための最良の方法は何ですか? Modernizr経由でMedia.matchと同時にrespond.jsを読み込んでみました。最初にロードすると、以前と同じ JS エラーが表示されます。2 番目に読み込むと、メディア クエリが機能しません。また、Media.match の INSTEAD をロードしようとしましたが、JS エラーが返されます。
ありがとう。
編集:
これを投稿した直後に、inquire 1.5.6 にロールバックし、Respond.js と shouldDegrade オプションを使用し、Modernizr テストは使用しませんでした。IE8/9 では JS エラーは発生せず、これまでのところすべて正常に動作しているようです。
これを 2.0 で動作させる方法があるかどうか、または今のところ 1.5.6 に固執する必要があるかどうかを知りたいですか?