jQuery nextUntil可以执行我的功能吗?

时间:2016-06-16 21:16:14

标签: jquery

我可以这样做

        $("#id")
            .closest("div")
            .nextUntil("div.stop-class")
            .addClass("new-class");

我想做的是这个

        $("#id")
            .closest("div")
            .nextUntil("div.stop-class")
            .myFunction(someParameter);

我可以extend jQuery,但还有另一种方法吗?

1 个答案:

答案 0 :(得分:0)

.nextUntil方法只返回一个用于链接的jQuery对象,与.closest或任何其他选择器方法相同,包括$("#id")本身。

要将自己的链接方法添加到jQuery,您不需要使用$.fn.extend,只需将新功能直接添加到$.fn.,然后返回this(或this.chain函数的进一步结果,例如:

$.fn.myFunction = function(param) {
    return this.css( "color", param );  // or whatever is required
}

$("#id").myFunction();

或者,使用nextUntil:

$("#id")
        .closest("div")
        .nextUntil("div.stop-class")
        .myFunction("green");