遍历JQuery对象?

时间:2012-02-14 16:01:18

标签: javascript jquery

我正在使用以下方法对元素列表进行排序:

jQuery.fn.sort = function() {
   return this.pushStack( [].sort.apply( this, arguments ), []);
 };


$("ol li").sort("sortFunction").appendTo("ol");

问题出在sortFunction。

function sortFunction($a, $b) {
  ...
}

基本上,我想要的是将$ a和$ b视为jQuery对象,因此我可以操纵它们。

例如,在sortFunction中执行

$a.find("div#3 li").html();

这不起作用,因为$ a和$ b是本机javascript对象。

任何帮助?

4 个答案:

答案 0 :(得分:1)

它们是原生DOM元素。你可以在一个上调用jQuery函数来包装它,以便jQuery函数可用:

$($a).find(...)

答案 1 :(得分:1)

您可以将本机JS对象转换为jquery对象,如下所示:

var jsObject = $(nativeobject);

这有帮助吗?

答案 2 :(得分:1)

你不能简单地在对象上调用jQuery吗?

function sortFunction($a, $b) {
   var jQueryA = $($a);
}

答案 3 :(得分:1)

只需将它们转换为sort函数中的jQuery对象:

$($a).find("div#3 li").html();

注意:请勿将其称为$a,而只是a。使用美元符号进行前缀通常表示jquery类型变量,因此如果它不是

则会引起混淆