2015-09-25 106 views
1

我想要得到一個div,它的innerHTML中包含'xxx'使用簡單的jQuery選擇器

我能做到這一點與下面的代碼:

$("div:contains('xxx')") 

不幸的是,我不能用這個,因爲另一個插件已經提供了我div

我可以這樣做嗎?!

element.contains('xxx') 

我知道我可以使用過濾器,但我想保持簡單。

這些僞選擇符可以用作點符號的屬性嗎?

例如,如果我想在選擇的最後一個元素,我可以用這個:

$("div:last") 

有沒有這樣的事情下面?

$("div").last() 

我知道我可以使用下面的代碼,但我想保持簡單:

$("div").eq($("div").length-1) 

任何想法,如何將這些僞選擇器可以使用點符號(如所選的性質使用元素)?

+0

'但是我不能使用這項事業另一個插件已經給我提供了「格」'你能解釋一下你的意思這樣?如果元素在DOM中,那麼您可以選擇它,只要你喜歡。 –

+0

我正在從另一個插件獲取外部插件中的元素。我只能訪問「元素」,我需要使用它。我的意思是,我真的需要在選擇器中使用「元素」。 – user3262028

+0

JetBrain的推薦之一就是將你的「簡單僞」選擇器分開以分開函數調用。不要試圖讓它難以閱讀... –

回答

0

任何想法如何使用點符號(作爲選定元素的屬性)使用這些「僞」選擇器?

其中一些確實具有相同的方法。 .last存在。但對於那些你不需要使用.filterHere is a list of all jQuery methods你可以在哪裏找你自己。

1

你可以做的是選擇給定的div像這樣:

div.find(":contains(xxx)") 

提供DIV是一個jQuery對象以其它方式使用$(div)

之後,只需檢查選擇是否包含任何元素。 這同樣適用於最後一個選擇:

$("div").find(":last") 
0

我認爲.is()可能是你在找什麼。 嘗試

$(element).is(":contains('xxx')"); 

的DOM元素 或

element.is(":contains('xxx')"); 

jQuery的對象