jquery中 $.fn的使用问题

代码如下:

 /*test.js*/
(function( $ ){
    $.fn.test = function() {
        var data = {};
        alert('test');
        return data;
    };
})( jQuery );



/*test.jsp*/
//引入jquery文件和test.js

var a = $("#abc").test();

当我调用定义的test时,控制台提示找不到test, 但是如果只是一个简单的function则可以调用到,我问题出在哪呢,希望指点一下。

JS文件(test.js)有引入到Html文件里边么?

扩展jQuery的实例方法,应该这样写

 $.fn.extend({
     test: function(){
        alert('test');
     }
 });

问题已经找到了,代码是没有问题的,引入的jquery文件也没有问题,问题是我引了两次jquery文件,把多引入的那行删除问题就不存在了。

重复导入jqeury会覆盖已经添加到fn中的扩展,除非你的扩展是在最后一个jquery 的script执行的,在前面被覆盖,这么基础的错误都能犯