2012-01-14 17 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

基於我所看到的,我認爲答案是:不。