私は最近Harvey.jsに出くわし、とても満足しています。今、私はそれをModernizr.load(Yepnope)と統合しようとしていますが、ほとんど成功していません。
このコードスニペットで私が何をしようとしているのかがわかります。
Modernizr.load({
test: Harvey,
nope: '<?php bloginfo('stylesheet_directory'); ?>/js/harvey.js',
complete: function(){
Harvey.attach('screen and (max-width: 960px)', {
on: function(){ $('ul#menu-primary').each(menuReplace) },
off: function(){ $('#navigation nav').empty().append(menu) }
});
if( !smallV ){
$('.responsivize').each(function(){
var me = $(this),
data = me.data();
data.src = data.fullsrc;
delete data.fullsrc;
$('<img />', data).insertBefore(me)
me.remove()
});
}
}
});
試してみると、ブラウザが「関数が定義されていません」というエラーをスローし、ページが表示されなくなります。
YepNopeに関数が使用可能かどうかをテストさせる方法はありますか?
編集:私が関数をテストしている理由は、Harveyを使用するコードのさらに2つの同様のコードブロックがあるためです。スクリプトが正しくロードされていることを再確認する簡単な方法だと思いました。
皆さんありがとう。