Javascript jQuery获取搜索选择器,如果元素不';不存在

Javascript jQuery获取搜索选择器,如果元素不';不存在,javascript,jquery,jquery-plugins,jquery-selectors,Javascript,Jquery,Jquery Plugins,Jquery Selectors,若一个元素不存在,那个么如何获取搜索到的选择器字符串 例如: $('parent-child.class').plugin() 在我的插件中,我想获取字符串“parent-child.class”,但是$('parent-child.class')不存在 我将开始深入研究jQuery源代码,但我想如果有更熟悉的人知道这一点,我会问一下。有选择器属性: $.fn.plugin = function() { if (this.length == 0) { return this.sele

若一个元素不存在,那个么如何获取搜索到的选择器字符串

例如:

$('parent-child.class').plugin()

在我的插件中,我想获取字符串
“parent-child.class”
,但是
$('parent-child.class')
不存在


我将开始深入研究jQuery源代码,但我想如果有更熟悉的人知道这一点,我会问一下。

有选择器属性:

$.fn.plugin = function() {
  if (this.length == 0) {
    return this.selector;
  }
};

存在选择器属性:

$.fn.plugin = function() {
  if (this.length == 0) {
    return this.selector;
  }
};
你不能

jQuery对象有一个
.selector
属性,您可以在插件中使用该属性(尽管它似乎是用于与jQuery交互使用),但是——这是一个很大的属性,但并非所有jQuery对象都是使用选择器字符串创建的。考虑这个例子使用<代码> .UpLub in()<代码>:

$('div.someClass').add(document.getElementById(“test”))
.add(“你好”)
.filter(函数(){
返回$(this.attr(“数据测试”)==“blah”;
})
.家长()
.yourPlugin();
不管jQuery对象是否包含任何元素,考虑最终传递给
.yourPlugin()
的是哪个选择器导致jQuery对象是没有意义的

(我想,如果你知道你的插件只会被你使用,并且你只会通过一个选择器来传递jQuery对象,那么你可以在你的插件中使用这个选择器…

jQuery对象有一个
.selector
属性,您可以在插件中使用该属性(尽管它似乎是用于与jQuery交互使用),但是——这是一个很大的属性,但并非所有jQuery对象都是使用选择器字符串创建的。考虑这个例子使用<代码> .UpLub in()<代码>:

$('div.someClass').add(document.getElementById(“test”))
.add(“你好”)
.filter(函数(){
返回$(this.attr(“数据测试”)==“blah”;
})
.家长()
.yourPlugin();
不管jQuery对象是否包含任何元素,考虑最终传递给
.yourPlugin()
的是哪个选择器导致jQuery对象是没有意义的


(我想如果你知道你的插件只会被你使用,并且你只会把用选择器创建的jQuery对象传递给它,那么你可以在你的插件中使用
this.selector

不会
如果($('parent-child.class')。length==0){}
工作???@RajatSinghal确实,这就是我正在做的事情。)(虽然我遗漏了
==0
)。现在,我需要在它的父级中创建子级,假设父级存在。捕获是
子级
可以是任何类型的元素。不会
如果($('parent-child.class')。长度==0){}
工作???@RajatSinghal确实,这就是我正在做的事情(尽管我遗漏了
==0
)。现在,我需要在其父元素中创建子元素,假设父元素存在。问题是
child
可以是任何类型的元素。谢谢,非常有用的信息。我正在尝试创建一个不存在的元素,但元素可以变化。是的,它只是用于个人项目。谢谢,非常有用的信息。我正在尝试如果元素不存在,则创建元素,但元素可能会有所不同。而且,是的,它只是用于个人项目。感谢您提供的坚实示例。这可能是我需要的。我会尝试一下。感谢您提供的坚实示例。这可能是我需要的。我会尝试一下。