我正在运行一个wordpress网站,该网站的主页上有一个Nivoslider。我不得不使用另一个插件,所以为了工作,我需要在header.php文件中包含jquery,在'head'标签内。现在当我在<?php wp_head(); ?>
下包含jquery文件时,Nivo滑块不起作用并卡在加载屏幕上。我尝试在互联网上搜索此问题并尝试了一个解决方案,我在<?php wp_head(); ?>
上面添加了以下代码:
<?php
wp_deregister_script('jquery'); // Remove the default jQuery script
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js', false); // Register the Google hosted Version
wp_enqueue_script('jquery'); // Enqueue the Google Hosted version
?>
在<?php wp_head(); ?>
上方添加此代码后,滑块的第一张幻灯片现在只显示,我无法通过单击下一个/上一个按钮在幻灯片之间切换。此外,当我从header.php文件中删除代码<?php wp_head(); ?>
并添加jquery文件时,我的其他插件开始正常工作但滑块停止工作。我假设jquery被加载两次导致冲突,但我似乎无法找到问题产生的地方。这是我运行Nivoslider和其他插件的网站:http://ignoremusic.com/
答案 0 :(得分:2)
在JS控制台中看到错误:
Uncaught TypeError: Property '$' of object [object Object] is not a function
在wordpress中,您可能会遇到嵌入了jquery版本的一些问题。 而不是使用:
$('#div').hide()
试试这个:
jQuery('#div').hide()
或者您可以使用JQuery.noConflict()
http://api.jquery.com/jQuery.noConflict/
我个人将滑块的JS代码嵌入到noConflict()函数中。