私は次のHTMLを持っています:
<div id="rightCon">
</div>
そして、上部に次のスクリプトがあります。
$('#rightCon:empty').hide();
div が非表示にならないのはなぜですか? いくつかのスペースがあることがわかります (取り除くことができません) が、それは本当に問題ですか? スペースのみで空の場合、この div を削除/非表示にするにはどうすればよいですか?
私は次のHTMLを持っています:
<div id="rightCon">
</div>
そして、上部に次のスクリプトがあります。
$('#rightCon:empty').hide();
div が非表示にならないのはなぜですか? いくつかのスペースがあることがわかります (取り除くことができません) が、それは本当に問題ですか? スペースのみで空の場合、この div を削除/非表示にするにはどうすればよいですか?
要素には空白がたくさんあるように見え、テキストノードになります。:empty
そのため、一致しません。
要素を見つけて、その内容を明示的に確認してみてください。
$('#rightCon').filter(function() {
var text = $(this).text().replace(/\s*/g, '');
return !text;
}).hide();
あなたのdivは実際にはありませんempty
(空白が含まれています)。そのため、セレクター$("#rightCon:empty")
は を評価して非表示にすることはありませんdiv
。
要素は一意である必要があるためHTML
、次の方法で正しい要素を選択できると安全に想定できます。
var rightCon = $("#rightCon");
次に、次の方法で要素を非表示にできます。
right.hide();
または
$("#rightCon").hide();