2

如此处所述,建议保存必须在不同事件中可访问的状态$$(this),如下所示:

$$(this).filters = "myvalue";

该语法是什么意思?为什么$$(双美元)?为什么this?为什么是()(括号)?

无论如何,该代码对我不起作用。我必须使用类似的东西:

$.filters = "myvalue";

我想了解为什么第二种形式有效,而第一种无效。

4

1 回答 1

1

只需查看 eventlly 的源代码,$$它只是 jQuerydata方法的简写:

function $$(node) {
  var data = $(node).data("$$");
  if (data) {
    return data;
  } else {
    data = {};
    $(node).data("$$", data);
    return data;
  }
};

所以,简而言之 - 它调用data任何 jQuery 返回的参数,如果没有附加数据,它会创建空对象,将其用作新对象data并返回它。

$.filters = "myvalue"

这通过将值分配给全局 jQuery 对象来工作,同时$$将您的数据附加到由查询表示的对象。

于 2011-11-09T14:13:53.177 回答