debugging js scripts

时间:2015-02-17 作者:Jamie

我在排队javascript时遇到问题。当我在我的站点的head部分使用script标签时,一切都正常。如果我取出脚本并使用排队,网站就会中断,但我在firebug中没有发现任何错误。查看源代码时,整个页面看起来好像都在那里,但很明显一些js脚本没有工作,这导致我的网站崩溃。有没有办法找出它崩溃的原因?控制台中没有任何内容。

我会链接到该网站,但我会继续工作,因为事情会改变,链接不会太好。我正在寻找调试js错误的提示。我可以去哪里看?

我的脚本排队方法

 wp_register_script(\'isotope\', get_template_directory_uri() . \'/js/jquery.isotope.min.js\',array(\'jquery\'),\'\',true);

 wp_enqueue_script(\'isotope\');


 function bliss_jsscripts(){
   if( !is_admin()){
    wp_register_script(\'supersized\', get_template_directory_uri() . \'/js/supersized.3.2.6.js\',array(\'jquery\'), false, true);

    wp_enqueue_script(\'supersized\',\'\',\'\',false,\'\');

    }
}
add_action(\'wp_enqueue_scripts\', \'bliss_jsscripts\', 999);

2 个回复
SO网友:Privateer

您可能要做的是检查您正在尝试排队的脚本的状态。

此外,请确保在操作中将内容排队。

e、 g。

function do_my_enqueue_scripts() {
   wp_register_script(\'isotope\', get_template_directory_uri() . \'/js/jquery.isotope.min.js\',array(\'jquery\'),\'\',true);

   wp_enqueue_script(\'isotope\');
}
add_action(\'wp_enqueue_scripts\', \'do_my_enqueue_scripts\');
您可以使用wp_script_is 函数检查它们是否实际排队。

e、 g.之后

wp_enqueue_script(\'isotope\');
if ( ! wp_script_is(\'isotope\', \'enqueued\') ) {
    echo \'<p>Script failed to queue up!</p>\';
}

SO网友:bosco

您的问题可能源于错误地使用WordPress函数-可能不需要调试任何Javascript来解决此问题。仔细审查the Codex entry for wp_enqueue_script().

我想这就是你想要实现的。在您的主题中functions.php 文件:

function wpse178370_enqueue_scripts() {
    wp_enqueue_script( \'isotope\', get_template_directory_uri() . \'/js/jquery.isotope.min.js\', array(\'jquery\') );
    wp_enqueue_script( \'supersized\', get_template_directory_uri() . \'/js/supersized.3.2.6.js\', array(\'jquery\'), \'3.2.6\' );
}

add_action( \'wp_enqueue_scripts\', \'wpse178370_enqueue_scripts\' );
除非您在代码中的不同位置输入脚本,或者在运行中交换脚本注册,否则没有太多理由使用wp_register_script() 完全同样,除非您明确需要在网站页脚中打印脚本(位于wp_footer()) 而不是<head></head> 标签,您不应该设置$in_footer 的参数wp_enqueue_script()/wp_register_script()true.

如果使用注册脚本wp_register_script() 并指定所有这些可选参数,然后调用wp_enqueue_script() 使用相同的脚本标记并再次指定所有这些可选参数,您将覆盖在中指定的参数wp_register_script().

此外is_admin() 由于仪表板脚本打印在\'admin_enqueue_scripts\' 行动,而不是\'wp_enqueue_scripts\'.

结束

相关推荐