是否有可能找回作为参数传递给jQuery插件的属性。如何获取jquery插件中使用的属性?
样品:
$("selector").pluginFunction({ prop1: "test"});
然后我想进一步得到这个属性值回。
像
var x = $("selector").pluginFunction().giveMyValueBack().prop1;
谢谢!
是否有可能找回作为参数传递给jQuery插件的属性。如何获取jquery插件中使用的属性?
样品:
$("selector").pluginFunction({ prop1: "test"});
然后我想进一步得到这个属性值回。
像
var x = $("selector").pluginFunction().giveMyValueBack().prop1;
谢谢!
由于我不知道这个插件是什么,你可以将该值作为数据附加到元素本身。
写:
$('selector').data('prop1', 'test');
阅读:
$('selector').data('prop1');
最终,这是开销。但不知道如何以及如果插件存储的价值不容易回答。
假设你使用jquery。
谢谢..我期待所有的jQuery插件会使用它的一种模式。但是,没关系,你的答案很好。 tks很多 – RobertoBr 2013-02-22 19:26:13
我很震惊,这被选为我的答案。它不仅需要更多的代码,而且效率不高。并且,考虑元素中已经存在data- *属性的情况,这些属性可能会干扰您传递给插件init的属性。另外,如果元素被删除,数据也会被删除。为属性设置单独的对象更清晰,代码更少,并且不太可能发生任何冲突。 – 2013-02-25 00:06:03
它只是一个可能的解决方案。我特别不喜欢你的答案的“全球”行为,但这是一个意见。另外,如果元素被删除,数据将被删除。接下来的一点是,针对不同选择器的插件可能会有很多数据。有很多我们不知道的东西。所以也许他只是选择了最适合他需求的那个。 – 2013-02-25 08:09:10
尝试创建插件属性作为单独的对象,然后将该对象传递给pluginFunction。例如。
var pluginData = { prop1: "test"};
$("selector").pluginFunction(pluginData);
然后你总是可以引用pluginData对象。
var prop1 = pluginData.prop1;
好主意。很明显,尽管我经常检索我的jQuery UI滑动条参数,例如'$(“#myslider”)。slider(“options”,“step”);',但我并没有想到这一点。 – Marc 2013-02-22 19:24:27
该插件将不得不实现一种方式让你得到它。并非所有插件都以相同的方式创建。 – 2013-02-22 18:50:24
是否有你需要的特定插件?插件可以使用不同的约定。 – Marc 2013-02-22 18:50:53
我正在使用同位素。我想要带回我设置的筛选器属性 – RobertoBr 2013-02-22 19:53:05