我正在制作自定义wordpress主题http://www.imlivingart.com/testimonials的响应式下拉菜单(注意:此问题与启动页面无关,所以请不要访问imlivingart.com)< / p>
愿景:当我将浏览器的大小调整为900时,应该会出现一个菜单栏。当我点击该菜单栏时,WP菜单列表会下降。当我再次单击菜单栏时,WP菜单列表被隐藏。
当前的现实:我正在尝试使用一些简单的jQuery来上下切换菜单。不幸的是我似乎无法将我的自定义jQuery连接到我的WP主题。
jquery(目前位于/js/resp-menu.js):
jQuery(document).ready(function() {
$('#show-rmenu').click(function() {
$('.r-menu').slideToggle("fast");
});
});
所有相关代码似乎都在这个jsfiddle中工作(针对非WP调整):http://jsfiddle.net/QRfK7/1/
但这并不能转化为我的WP主题。在我的函数文件中,我试图以各种方式调用jQuery和我的自定义脚本。最近我试过这个(来自http://www.ericmmartin.com/5-tips-for-using-jquery-with-wordpress/):
function my_init() {
if (!is_admin()) {
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js', false, '1.10.1', true);
wp_enqueue_script('jquery');
// load a JS file from my theme: js/theme.js
wp_enqueue_script('my_script', get_bloginfo('template_url') . '/js/resp-menu.js', array('jquery'), '1.10.1', true);
}
}
add_action('init', 'my_init');
我希望有足够的信息。啊。我是jQuery和WP Enqueue Script的新手,而且我已经破坏了我的大脑2天了。我尝试使用谷歌搜索,并在StackOverflow上找到了类似的问题,但它们似乎并没有使它工作。也许我的问题更具体?叹息......任何帮助都将不胜感激!感谢!!!
修改
好的,我设法使用本教程:http://wpwizard.net/jquery/add-jquery-to-your-theme-or-plugin/
这涉及将jQuery直接编码到我的WP主题标题中。即便如此,我也很高兴弄清楚如何链接到我的自定义jquery 外部脚本表。谢谢!
答案 0 :(得分:0)
我不确定你为什么要取消注册jQuery库然后重新添加它。我会写如下所示。
此外,如果您使用 代码bloginfo( 'template_url');
您需要像这样调用它, get_bloginfo( 'template_url');
你应该使用 get_template_directory_uri();
您还应该使用wp_enqueue_scripts操作,而不是init。
注意我在函数参数中添加了$,这是因为WP jQuery lib无法识别$。另一种选择是用jQuery替换$的所有实例。
jQuery(document).ready(function($) {
$('#show-rmenu').click(function() {
$('.r-menu').slideToggle("fast");
});
});
// Register Javascript with wp_enqueue
function my_init() {
if (!is_admin()) {
// Register Script
wp_register_script('my_script', get_template_directory_uri() . '/js/resp-menu.js', array('jquery'), '1.10.1', true);
wp_enqueue_script('my_script');
}
}
add_action('wp_enqueue_scripts', 'my_init');