jQuery自定义插件无法按照文档的建议运行

时间:2014-12-01 21:33:41

标签: javascript jquery

我正在使用jQuery,但是在使用以下命令包装插件时,docs建议的方法似乎不起作用:

(function ($) {
    $.fn.tabs = function(options) {
        return $(this).css({color: red});
    }; 
}(jQuery)); 

$(document).ready(function(e) {   
    $('.some').tabs();
}); 

因此,应用test类的跨度应该会使其变为红色。但是,这不起作用,但如果我将它包装在ready子句中,它就会起作用:

$(document).ready(function(e) {
    $.fn.test = function(options) {
        return $(this).css({color: 'red'});
    };

    $('.test').test();
});

所以这很有效。

为什么在第一部分包装它时不起作用?

我也在拉拢(连接和缩小)RivetsJS和Chart.JS。

1 个答案:

答案 0 :(得分:1)

As per every example in the docs,你最后错过(jQuery) ....

(function($) {
    $.fn.test = function(options) {
        return $(this).css({color: 'red'});
    }; 
}( jQuery )); // <- this here

编辑:然后你修复了问题中的代码。


您的顶级功能与底部功能不同。 "red"缺少引号并被解释为变量(语法错误)。

否则,似乎工作......

DEMO:http://jsfiddle.net/wzvugpku/