嘿, 快速的問題,我無法找到任何網絡上。我有一個父div和一個小div在裏面。用CSS來選擇它,你會說:jquery這個孩子選擇器?
#parent .child {}
jQuery中我有一個變種我的父元素,但如何選擇孩子這件事? 我知道這很容易創建一個新的變種,我只是好奇,如果這是可能的?
var Parent = $('#parent');
Parent.click(function() {
$(this > '.child').hide();
謝謝
嘿, 快速的問題,我無法找到任何網絡上。我有一個父div和一個小div在裏面。用CSS來選擇它,你會說:jquery這個孩子選擇器?
#parent .child {}
jQuery中我有一個變種我的父元素,但如何選擇孩子這件事? 我知道這很容易創建一個新的變種,我只是好奇,如果這是可能的?
var Parent = $('#parent');
Parent.click(function() {
$(this > '.child').hide();
謝謝
正確的語法是:
$(".child", this)
如果你只想要直接兒:
$("> .child", this)
(歸功於濃湯爲提到這一點)
更新,兩年後:
您可以使用$(this).find('> .child')
+1我已經使用這個解決方案:) – 2013-03-13 18:47:57
試試這個代碼:
$("#parent").click(function() {
$(this).next().hide();
});
var Parent = $('#parent');
Parent.click(function() {
$(".child", this).hide();
});
或
$("#parent").click(function() {
$(".child", this).hide();
});
你可能只是調用.find()
方法:
var Parent = $('#parent');
Parent.click(function() {
$(this).find('.child').hide();
});
如果你只是想選擇直接孩子,用.children()
方法代替:
Parent.click(function() {
$(this).children('.child').hide();
});
人們常常用類似語法
$('.child', this);
也。由於你寫了一個「反向」訂單,所以對我來說不是很方便。無論如何,這種語法會在內部轉換爲.find()
語句,所以您實際上正在保存一個呼叫。
U可以找到你的父元素的兒童和應用CSS。
示例代碼如下。
var Parent = $('#parent');
Parent.click(function() {
$(this).find('.child').hide();});
注意,[選擇'EF'(http://www.w3.org/TR/CSS2/selector.html#descendant-selectors)不僅僅是子元素,但*任何*後裔匹配'E'的元素。對於孩子只能使用['E> F'](http://www.w3.org/TR/CSS2/selector.html#child-selectors)。 – Gumbo 2010-12-20 08:37:15