Wordpress のインストールで Enquire.js を使用しようとしています。小さな画面の場合、左の列を中央の列の下に押し込もうとしています。
ラップトップのほとんどのブラウザーで動作するようになりましたが、古い Android ブラウザー (2.2) では動作せず、ポリフィルが必要です。このポリフィルを機能させようとしましたが、Android で機能を取得できず、Android コンソールで matchmedia ポリフィルに関する警告が引き続き表示されます。
考えられる問題を特定するのを手伝ってください。基本的に、function.php にいくつかのスクリプトをロードします。
function rr_scripts() {
wp_enqueue_script( 'polyfill', get_stylesheet_directory_uri() . '/js/polyfill.js', array( 'Modernizr' ), '1.0.0', true );
wp_enqueue_script( 'enquire', get_stylesheet_directory_uri() . '/js/enquire.js', array( 'jquery' ), '1.0.0', true );
wp_enqueue_script( 'reorder', get_stylesheet_directory_uri() . '/js/reorder.js', array( 'enquire' ), '1.0.0', true );
}
add_action( 'wp_enqueue_scripts', 'rr_scripts' );
次に、私の Child テンプレートには、いくつかのファイル polyfill.js を含む js フォルダーがあり、メディアマッチをポリフィルすることになっています (media.match.js は同じフォルダーにあります)。
Modernizr.load([
{
test: window.matchMedia,
nope: "media.match.js"
} ]);
同じフォルダーにある enquire.js を実際に使用する reorder.js (以下):
jQuery(document).ready(function() {
enquire.register("screen and (max-width: 599px)", {
match: function() { jQuery('#leftside').insertAfter('#primary'); },
unmatch: function() { jQuery('#leftside').insertBefore('#primary'); }
});
});