2015-02-11 154 views
1

我正在尝试开发我的第一个WordPress主题,而且我无法在我的子主题的functions.php文件中加载几个JavaScript文件。我必须错过一些东西,因为我的脚本没有运行,但我相当积极,我的语法是正确的。在Wordpress儿童主题中加载脚本时遇到问题

这里是我添加到我的孩子主题的我的functions.php文件中的代码。它加载一个JavaScript动画库,然后加载我的自定义脚本,而这些脚本都不依赖于jQuery。

add_action('wp_enqueue_scripts', 'custom_theme_scripts'); 

function custom_theme_scripts() { 
    wp_register_script('GSAP','http://cdnjs.cloudflare.com/ajax/libs/gsap/latest/TweenLite.min.js', true); 
    wp_register_script('Animations', get_stylesheet_directory_uri() . '/animation.js', true); 

    wp_enqueue_script('GSAP'); 
    wp_enqueue_script('Animations'); 
} 

这是我的自定义脚本目标页面上的元素的.svg用“标志”的ID

window.onload = function() { 

    var logo = document.getElementById("logo"); 
    TweenLite.to(logo, 1.5, { width:5000 }); 

}; 
+1

你得到什么错误?还是仅仅是没有什么事情发生? – 2015-02-11 19:20:48

+0

什么都没有发生。在JavaScript控制台中也没有错误。 – 2015-02-11 19:23:26

+0

我刚刚添加了window.onload,但仍然没有任何事情发生 – 2015-02-11 19:34:12

回答

1

我复制并粘贴您的代码在我的孩子的主题之一,包括你的JavaScript代码和所有运行没有问题。

确保当你为自己的WordPress主题,你做出正确的设置创建子主题:

  1. 的style.css:检查它包含正确的标题,它基本上包括与目录名tilte线的父主题。
  2. functions.php:当您包含您的子主题时,您必须在子主题的functions.php中添加父style.css的注册。换句话说,在激活您的儿童主题之前,请务必在注册脚本时包含此内容:

wp_register_style('childstyle', get_stylesheet_directory_uri() . '/style.css' ); 
wp_enqueue_style('childstyle'); 

除此之外,如果一切安装正确,它应该加载您的脚本。检查通过浏览器中的开发工具加载的资源。或者尝试加载任何其他的javascript行来检查脚本是否正在运行。

如果主题设置的其余部分已正确完成,那么您发布的脚本就有效。我不能说更多,我希望它可以帮助

+0

这就是我很困惑的,我完全遵循了codex,并且我知道我的孩子主题设置正确,因为如果我对孩子的风格进行调整,它会显示在我的主题和父母默认样式显示出来,所以仍然被加载。我使用下划线模板,但我真的不认为这有任何责任。 – 2015-02-11 20:31:12

+0

所以现在我注意到我的脚本甚至没有出现在源代码中,所以他们甚至没有通过入队部分 – 2015-02-11 20:41:36

+0

没有错误或者是对的?很难想象它,因为你的代码看起来不错。我直接复制它,它对我有用。你能提供任何链接看到它吗?也许一个链接到你的functions.php的原始内容的文件。这可能是完全不同的东西。但目前很难知道。 – 2015-02-12 00:13:57