创建一个不会断链的jquery插件

创建一个不会断链的jquery插件,jquery,Jquery,我编写这个函数是为了在移动CSS时避免麻烦(它将CSS字符串转换为对象)。我希望能够使用它作为.css()函数的下拉菜单 jQuery.fn.cCSS = function(css) { return this.each(function(){ var css_obj = {}; var tmx = ""; ocss = css.split(";"); $.each(ocss, function (index, elem){ tmx = e

我编写这个函数是为了在移动CSS时避免麻烦(它将CSS字符串转换为对象)。我希望能够使用它作为
.css()
函数的下拉菜单

jQuery.fn.cCSS = function(css) {
    return this.each(function(){
    var css_obj = {};
    var tmx = "";
    ocss = css.split(";");
    $.each(ocss, function (index, elem){
        tmx = elem.trim().split(':');
        if (tmx[0].length > 0) 
            css_obj[tmx[0]] = tmx[1].trim();

    });
         return  $(this).css(css_obj);
        //return $;
    });
    };

})(jQuery);
我的问题是,当我在“fluent”表示法中使用它时,我总是得到一个空错误

未捕获的TypeError:无法调用null的方法“addClass”


我有点困惑为了不“断链”必须返回什么

您想要
返回这个
,毕竟,您希望在同一个对象上调用下一个函数

您正在返回此。每个(…)!
.each()
的输出很可能为空。

您可能需要查看错误的行号。我不认为这和这个函数有任何关系。这个函数本身对我有用


我将另一个函数链接到JSFIDLE示例上,它运行良好。在我的代码中,cCSS后的任何方法都会以未捕获的TypeError中断执行:无法调用null的方法“xxxx”。我会深入调查的。我应该更清楚,错误发生在调用函数时。在您给出的代码中,有一个额外的结束括号。我不知道这是否重要,也不知道这是否是一个意外事件。很好,我有过100次代码,在一个实例中错误地使用了股票css,导致它失败(第一次)。
$('#test').cCSS('bleh...').addClass('foo');