我正在尝试将一个带有JQuery滑块插件的Wordpress网站放在一起,但该插件没有显示在页面上,我总是收到上述错误消息。
尽管在其他帖子中尝试了几种不同的修复方法,我仍然无法解决上述错误,包括将脚本标记放在“header.php”文件中。任何帮助将不胜感激 - 谢谢!
'footer.php'文件中的相关代码
<!--Load JQuery-->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
</body>
</html>
网站: http://www.advanceprojects.com.au/
答案 0 :(得分:6)
脚本始终按顺序运行。
所以基本上你甚至在加载jQuery库之前就试图使用jQuery。
您的脚本依赖于Nivo,而Nivo又依赖于jQuery库。
在加载库后将脚本移动到行,或将库声明移动到头部。
还要确保将脚本包含在DOM Ready
处理程序中。
所以你应该加载它们的顺序是
-- jQuery
-- Nivo Slider
-- your script that uses the above 2 libraries.
答案 1 :(得分:1)
请参阅链接如何添加css和Js文件
http://codex.wordpress.org/Function_Reference/wp_enqueue_script
可能在JQuery之前,你的Js文件被加载了。
在Jquery文件加载后添加js文件
实施例
wp_enqueue_script("yourjs","yourjspath",array('jquery'), true);
答案 2 :(得分:1)
在Wordpress的最新版本中,这可能是由核心性能改进引起的:
尝试将其放在wp.config文件中:
id Subid updateType T-id updateTime createTime
1 7393 TOP-UP 2313 2015-10-01 2015-10-01
2 7393 TOP-UPDATE 2313 2015-10-03 2015-10-03
3 7393 CDR 2313 2015-10-04 2015-10-04
4 7393 EXP_By_Date 2313 2015-10-05 2015-10-05
5 7393 TOP-UP 2456 2015-11-01 2015-11-01
6 7393 TOP-UPDATE 2456 2015-11-03 2015-11-03
7 7393 CDR 2456 2015-11-04 2015-11-04
8 7393 CDR 2456 2015-11-04 2015-11-04
9 7393 EXP_By_Date 2456 2015-11-05 2015-11-05
答案 3 :(得分:0)
使用
jQuery(document).ready(function(){
jQuery('#wpns_slider').nivoSlider({effect:'random',slices:2,});
});
而不是
jQuery(window).load(function(){
jQuery('#wpns_slider').nivoSlider({effect:'random',slices:2,});
});
$(window).load(function() {... })
显式绑定到窗口的加载事件,您的代码在加载jQuery
库之前已经触发。您必须使用 DOM Ready
处理程序。
答案 4 :(得分:0)
我找到了解决方案。我在Wordpress的管理部分遇到错误,解决方法是等待HTML文档完全加载和解析(DOMContentLoaded)。
我的工作代码:
add_action('admin_enqueue_scripts','my_script');
function my_script(){
if(is_admin()){
?>
<script>
document.addEventListener('DOMContentLoaded', () => {
jQuery(document).ready(function($){
//Your code...
});
});
</script>
<?php
}
}
参考:
答案 5 :(得分:0)
这对我有用。
添加行
if isVisible {
ctsscollViewHeight.priority = UILayoutPriority(rawValue: 999)
ctsscollViewHeight.constant = 0
self.seperateLineDownAddress.addshadow(top: false, left: false, bottom: false, right: false,shadowOpacity: 0.0,height:0.0)
self.mapView.setNeedsUpdateConstraints()
UIView.animate(withDuration: 0.6, delay: 0, options: .curveEaseInOut, animations: {
self.view.layoutIfNeeded()
self.orderDetailsContainer.alpha = 0.0
}){ (isCompleted) in
self.orderDetailsContainer.isHidden = true
}
}else{
orderDetailsContainer.alpha = 0.0
self.seperateLineDownAddress.addshadow(top: false, left: false, bottom: true, right: false,shadowOpacity: 0.15,height:1.0)
if orderDetailsContainer.frame.height > ((UIScreen.main.bounds.height) / 2) {
ctsscollViewHeight.priority = UILayoutPriority(rawValue: 250)
}else{
ctsscollViewHeight.priority = UILayoutPriority(rawValue: 999)
}
ctsscollViewHeight.constant = self.orderDetailsContainer.frame.height
self.mapView.setNeedsUpdateConstraints()
UIView.animate(withDuration: 0.6, delay:0, options: .curveEaseInOut, animations: {
self.orderDetailsContainer.alpha = 1.0
self.orderDetailsContainer.isHidden = false
self.view.layoutIfNeeded()
})
}
}
发生此错误是因为不包括jquery,并且在加载任何其他脚本之前应将其包括在内。 这是一个示例:
firstplugin.php
wp_enqueue_script('jquery');
test.js
<?php
/*
Plugin Name: Plugintrial
Description: plugin to test jquery
Version: 1
Author: Dismi Paul
*/
function childtheme_custom_login() {
wp_enqueue_script('jquery');
wp_enqueue_script('my-custom-script', plugins_url('/test.js', __FILE__));
?>
<h1>Welcome to My Homepage</h1>
<p id="intro">My name is Donald.</p>
<p>I live in Duckburg.<?php echo plugins_url('/test.js', __FILE__); ?></p>
<?php
}
add_action('login_head', 'childtheme_custom_login');