video.js not enqueueing?

时间:2015-05-30 作者:adamlaughlin

我真的很感激你们在这个问题上能提供的任何信息。Firebug告诉我,函数“videojs”没有定义,当它试图运行链接到swf对象的脚本块时:

<script>videojs.options.flash.swf = "<?php echo get_template_directory_uri(); ?>/loose/video-js.swf"</script>

因此,我打开firebug,进入脚本窗格,果然看到了视频。js未排队。

以下是我的所有排队供参考:

add_action(\'wp_enqueue_scripts\', \'lw_scripts_5\', 5);
add_action(\'wp_enqueue_scripts\', \'lw_scripts_10\', 10);
function lw_scripts_5() {
wp_enqueue_script(\'modernizr\', get_template_directory_uri().\'/js/modernizr.custom.90599.js\', array(\'\'), null, false);
}
function lw_scripts_10() {
//jQuery UI
wp_enqueue_script(\'jquery-ui\', get_template_directory_uri().\'/js/jquery-ui.min.js\', array(\'jquery\'), null, true);
wp_enqueue_style(\'jquery-ui\', get_template_directory_uri().\'/css/jquery-ui.css\');
//Twitter Bootstrap - http://getbootstrap.com
wp_enqueue_script(\'bootstrap\', get_template_directory_uri().\'/js/bootstrap.min.js\', array(\'jquery\'), null, true);
wp_enqueue_style(\'bootstrap\', get_template_directory_uri().\'/css/bootstrap.min.css\');
//bxSlider
wp_enqueue_script(\'bxslider\', get_template_directory_uri().\'/js/jquery.bxslider-rahisified.min.js\', array(\'fitvids\', \'easing\'), null, true);
wp_enqueue_style(\'bxslider\', get_template_directory_uri().\'/css/jquery.bxslider.css\');
//Video.js
wp_enqueue_script(\'video-js\', get_template_directory_uri().\'/js/video.js\', array(\'modernizr\'), null, true);
wp_enqueue_style(\'video-js\', get_template_directory_uri().\'/css/video-js.min.css\');
//Loose JavaScript
wp_enqueue_script(\'fitvids\', get_template_directory_uri().\'/js/jquery.fitvids.js\', array(\'jquery\'), null, true);
wp_enqueue_script(\'easing\', get_template_directory_uri().\'/js/jquery.easing.1.3.js\', array(\'jquery\'), null, true);
wp_enqueue_script(\'laughlinweb-main\', get_template_directory_uri().\'/js/laughlinweb.js\', array(\'jquery\', \'jquery-ui\', \'bootstrap\', \'bxslider\', \'video-js\'), null, true);
//Loose CSS
wp_enqueue_style(\'normalize\', get_template_directory_uri().\'/css/normalize.css\');
}
除了视频以外的一切。js加载成功。我真的不认为使用插件是可行的解决方案,我真的很想了解这一点(考虑到我称自己为web开发人员,我真的不能通过使用其他人的代码来妥协。只是他们的建议;-)

通常我只是洗个澡,但这真的不像是我要独自解决的问题。有人能认出原因视频吗。js不包括在内?

我的自定义modernizr中包含了HTML5视频shiv(实际上,我像n00b一样包含了它的所有内容),所以我不认为遵从页脚是导致问题的原因。我试着把它改成false 排队进入<head>, 没有区别。不管怎样,我相信这个脚本至少会出现在Firebug中,即使我把那个部分搞错了。

那么有人知道为什么这个脚本没有进入页面吗?我在localhost上运行,没有安装缓存插件。

我非常感谢任何能帮我思考这个问题的人<;3.

1 个回复
最合适的回答,由SO网友:darrinb 整理而成

可能有两件事:

视频。js不存在于get_template_directory_uri().\'/js/video.js\'

是否有插件已经注册了名为modernizr和/或video js的脚本lw_scripts_10 像这样:

function lw_scripts_10() {

   wp_register_script(\'modernizr\', get_template_directory_uri().\'/js/modernizr.custom.90599.js\', array(\'\'), null, false);

    //jQuery UI
    wp_enqueue_script(\'jquery-ui\', get_template_directory_uri().\'/js/jquery-ui.min.js\', array(\'jquery\'), null, true);
    wp_enqueue_style(\'jquery-ui\', get_template_directory_uri().\'/css/jquery-ui.css\');

    //Twitter Bootstrap - http://getbootstrap.com
    wp_enqueue_script(\'bootstrap\', get_template_directory_uri().\'/js/bootstrap.min.js\', array(\'jquery\'), null, true);
    wp_enqueue_style(\'bootstrap\', get_template_directory_uri().\'/css/bootstrap.min.css\');

    //bxSlider
    wp_enqueue_script(\'bxslider\', get_template_directory_uri().\'/js/jquery.bxslider-rahisified.min.js\', array(\'fitvids\', \'easing\'), null, true);
    wp_enqueue_style(\'bxslider\', get_template_directory_uri().\'/css/jquery.bxslider.css\');

    //Video.js
    wp_enqueue_script(\'video-js\', get_template_directory_uri().\'/js/video.js\', array(\'modernizr\'), null, true);
    wp_enqueue_style(\'video-js\', get_template_directory_uri().\'/css/video-js.min.css\');

    //Loose JavaScript
    wp_enqueue_script(\'fitvids\', get_template_directory_uri().\'/js/jquery.fitvids.js\', array(\'jquery\'), null, true);
    wp_enqueue_script(\'easing\', get_template_directory_uri().\'/js/jquery.easing.1.3.js\', array(\'jquery\'), null, true);
    wp_enqueue_script(\'laughlinweb-main\', get_template_directory_uri().\'/js/laughlinweb.js\', array(\'jquery\', \'jquery-ui\', \'bootstrap\', \'bxslider\', \'video-js\'), null, true);

    //Loose CSS
    wp_enqueue_style(\'normalize\', get_template_directory_uri().\'/css/normalize.css\');
}

结束