未捕获的ReferenceError:未定义jQuery

时间:2013-07-02 06:47:27

标签: jquery wordpress plugins referenceerror

我正在尝试将一个带有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/

6 个答案:

答案 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
    }
}

参考:

DOMContentLoaded

答案 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');