理解插件的概念 - $ / jQuery没有定义

时间:2013-09-12 07:01:31

标签: javascript jquery plugins jquery-plugins

我用以下语法编写了一个插件:

(function($){
 $.fn.samplePlugin = function() {
    return this.each(function() {
    //My logic here
    });
 };
})(jQuery);

然后我呼吁加载为

 $(document).ready(function(){
    $('#sample').samplePlugin();
});

现在我的控制台出现了这两个错误:

ReferenceError: jQuery is not defined
ReferenceError: $ is not defined

你可以告诉我我缺少什么,以及当你创建或包含插件时$注释的使用流量是什么?

谢谢,

5 个答案:

答案 0 :(得分:2)

在插件之前加入jQuery。

答案 1 :(得分:2)

(1)检查是否正确包含了jquery lib。在调用插件之前的代码中。 (2)如果您使用chrome来验证是否下载了jquery文件,请打开开发人员工具[Windows中的快捷方式F12]并切换到资源选项卡。查看是否在页面资源中的脚本下下载了jquery文件。

答案 2 :(得分:1)

写入确保正确加载jquery文件

如果您使用的是jQuery UI库,请确保订单正确无误。您首先需要包含jQuery库的引用以及之后的jQuery UI库。

答案 3 :(得分:0)

你是否在你的函数之上包含了jQuery?

如果是,请使用

$ = jQuery.noConflict();

上面调用你的函数。

答案 4 :(得分:0)

var jq = document.createElement('script');
jq.src = "//ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(jq);

jq.onload = procede;//make sure you don't type parenthesis

//i.e. 'procede()' runs function instantly
//     'procede' gives it a function to run when it's ready

...

function procede()
{
//jQuery commands are loaded (do your magic)


}