2012-01-14 50 views
2

我们都知道可以定义以:开头的自定义jQuery选择器。例如:不以“:”开头的自定义jQuery选择器

// :textfield definition 
$.expr[':'].textfield = function(obj) { 
    return $(obj).is("input[type='text']"); 
}; 

// Use 
$(":textfield").css({"background-color": "#700"}); 

只是出于好奇,是有可能定义一个自定义jQuery选择不与:开始呢?

+1

你有没有一个你想到的例子?如果你只用一个没有':'的单词,Sizzle会把它解释为一个元素选择器。 – 2012-01-14 21:22:44

+0

在Sizzle找不到元素选择器的情况下,如果它将自定义元素选为最终选项可能会更好。 – 2012-01-15 00:48:48

+0

如果通过自定义元素,你的意思是'',那么它的确如此。 http://jsfiddle.net/ncx7f/虽然我不确定你是否需要做一些破解来让IE工作。我认为在旧版本中,我认为你需要做一个'document.createElement('foo')'来识别它们。或者,也许这种黑客是让CSS工作。我不记得了。 – 2012-01-15 00:59:56

回答

0

基于我所看到的,我认为答案是:不。