當我在jQuery對象上調用.hide()
時,該對象的樣式爲display: none
。當您嘗試檢查此對象是否被object.is(':hidden')
隱藏時,它會返回true,但當您嘗試使用相同的jQuery方法檢查其第一個孩子時,某些返回false,而某些返回true。jQuery .hide()方法和object.is(':hidden')
樣品:
<div id="parentContainer">
<div id="childContainer"></div>
<p id="childContainer"></p>
</div>
$('#parentContainer').hide();
$("div[id='childContainer']").is(':hidden') // returns false
$("p[id='childContainer']").is(':hidden') // returns true
任何人有一個想法,爲什麼的行爲是這樣的嗎?
$(「#DIV childContainer」)爲(「:隱藏」)是如何,你應該在第二部分選擇ID ...或者,因爲它只是一個ID,並且所有ID應該是UNIQUE,你可以寫$('#childContainer')。is(':hidden') – Kristian 2012-08-03 16:25:03
沒有多個具有相同ID的元素。 – Ryan 2012-08-03 16:25:55
他們都爲我回報真實。 http://jsfiddle.net/UpEjP/在IE8/IE9/firefox中測試14.0.1/Chrome 21.0.1180.60 – 2012-08-03 16:31:56