0
A
回答
4
僅僅因爲你有一些你想使用的元素並不意味着他們在DOM中。考慮這個人爲的例子:
var $els = $('<div class="a"></div><div class="b"></div>');
console.log($('.a'));
console.log($els.find('.a'));
console.log($els.filter('.a'));
演示:http://jsfiddle.net/ambiguous/h3GMB/
第一個,$('.a')
,給你什麼,因爲$els
不在DOM呢。第二個也沒有給你什麼,因爲find
搜索後代。只有第三人會給你,你找什麼,因爲filter
減少:
匹配的元素集合到那些選擇匹配的[...]
這種操縱在爲DOM準備模板塊時,不在DOM中的東西相當常見。即使當DOM中的問題的元素是時,filter
和find
之間的差異也是相當重要的。
0
如從文件:
如果提供的jQuery代表了一組DOM元件,所述.filter()方法構造從匹配元素的子集的新jQuery對象。提供的選擇器針對每個元素進行測試;與選擇器匹配的所有元素都將包含在結果中。
考慮用一個簡單的列表的頁面就可以了:
我們可以將此方法應用於一組列表項:
$('li').filter(':even').css('background-color', 'red');
此調用的結果是一個紅色背景對於第1,3和5項,因爲它們與選擇器匹配(回想起:even和:odd使用基於0的索引)。
過濾器函數用於將原始查詢的結果過濾爲特定元素。
但是,如果您所指的是.hide()
和.show()
,這是您的選擇,而不是將您的代碼分割爲css和javascript,您有一些跨瀏覽器來完成這項工作的方法。
0
filter
可以過濾你有集的一部分,讓我們說我們有一個項目清單,以及所有項目我想補充一類,但它的一部分我要添加另一個類:
$('#mylist li').addClass('someclass').filter('.someotherclass').addClass('filtered');
我可以在兩個查詢中分割它。
相關問題
- 1. 爲什麼這個jQuery輸入選擇器需要過濾器解決方法
- 2. 需要使用過濾器
- 3. 過濾器使用jQuery
- 4. 爲什麼我不能爲我的地圖使用過濾器?
- 5. android intent過濾器:爲什麼要將它們分開?
- 6. 爲什麼我們需要android中的intent過濾器?
- 7. 爲什麼標籤意圖過濾器?
- 8. 爲什麼'git status'運行過濾器?
- 9. 爲什麼我dataveiw過濾器崩潰
- 10. 爲什麼過濾器卡在nrepl中?
- 11. 爲什麼過濾器不工作?
- 12. 爲什麼我們使用的過濾器,而搜索
- 13. 爲什麼在Spring中使用Url重寫過濾器?
- 14. 爲什麼CIGloom Core Image過濾器不能在iOS上使用?
- 15. IE5.5過濾器 - 爲什麼過濾器:漸變(屬性)不可用,而過濾器:alpha(屬性)是?
- 16. 什麼是實際應用過濾器?
- 17. 爲什麼要使用MVC /路由器
- 18. 過濾使用jQuery
- 19. 爲什麼使用攔截器或過濾器時,我們有驗證器
- 20. 控制器爲什麼要通過Airbrake使用notify_airbrake.notify
- 21. 要將過濾器
- 22. 爲什麼我需要爲ACTION_PACKAGE_ADDED意圖過濾器指定模式?
- 23. Servlet過濾器 - 不要將過濾器應用於特定的過濾器
- 24. 使用jQuery的collpasing過濾器
- 25. 如何使用Jquery過濾器?
- 26. 過濾器嵌套的div使用jQuery
- 27. 使用JQuery製作搜索過濾器?
- 28. 使用過濾器()來過濾基於父母的jQuery
- 29. 如何使用jquery picnet表過濾器過濾html
- 30. 什麼時候在過濾器之前使用並且要組織代碼(DRY)