まだ勉強していますが、コードに間違いがある場合、各コンテナdivを調べて、特定のdivが空でリンク/ボタンを削除する必要があります。jQuery - divが空の場合は、ボタン/リンクを非表示にします。
$('.eventText').each(function() {
if($('.exPanel').is(':empty')) {
$('a.eventLink').hide();
}
});
任意の助けいただければ幸いです。
おかげ
まだ勉強していますが、コードに間違いがある場合、各コンテナdivを調べて、特定のdivが空でリンク/ボタンを削除する必要があります。jQuery - divが空の場合は、ボタン/リンクを非表示にします。
$('.eventText').each(function() {
if($('.exPanel').is(':empty')) {
$('a.eventLink').hide();
}
});
任意の助けいただければ幸いです。
おかげ
配慮のカップルがここにあります...
は、最初はそれが一部のブラウザでは改行が含まれている場合要素が:empty
ないので、あなたが内側に見たいかもしれないということです。
私はまた、現在のマッチ内の要素を探すのではなく、すべての要素を探すためにコンテキストを使用しました。
$('.eventText').each(function() {
console.log($('.exPanel', this));
if(!$.trim($('.exPanel', this).html())) {
$('a.eventLink', this).hide();
}
});
.exPanel
は空ではありません。あなたはjQueryのtrim()
if ($.trim($('.exPanel').html().length) < 1) {
$('a.eventLink').hide();
}
または
if (!$.trim($('.exPanel').html().length)) {
$('a.eventLink').hide();
}
あなたはこの
if ($('.exPanel').children().length < 1) {
// do something
}
children()
関数は子供が含まれているjQueryオブジェクトを返す使用することができますを使用して空白をトリムするために多くのコードを追加する必要があります。したがって、サイズを確認して、子が1つ未満であるかどうかを確認する必要があります。子なしになります。
が、これは素晴らしい仕事、助けのためにこの
$('.eventText .exPanel').each(function(){
if (!$(this).text().trim().length) {
$(this).siblings('a.eventLink').hide();
}
});
感謝を試してみてください。 – webmonkey237