删除了jQuery .selector属性,解决方法?
我试图让选择器用于调用当前脚本,但当然我需要的属性由于某种原因被删除。
这有解决方法吗? 这基本上就是我想要完成的事情:
(function($) { $.fn.myplugin = function(options) { return this.each(function() { console.log($(this).selector); }); } }(jQuery)); //Somwehere else: $('.theClassISelected').myplugin(); //Should console.log('.theClassISelected')
我需要在.theClassISelected
中看到.theClassISelected
(或者我用来调用函数的某种forms的原始选择器),但由于选择器属性已从jQuery中删除,因此它不再可能。
我不明白为什么它被删除了 – 我已经用Google搜索了这个问题一段时间了,我看到的是2011-2012推荐selector
属性的StackOverflow答案。 我想这在某些方面很有用,但现在不行了?
从jQuery文档:
需要使用选择器的插件应该在初始化期间将调用程序作为插件参数的一部分传递给选择器。
http://api.jquery.com/selector/
另外,文档还提到选择器属性不可靠,因为“因为后续的遍历方法可能已经改变了集合”。