Próbuję usunąć określony element div, jeśli oddzielny element div jest pusty. Oto czego używam:
$(document).ready(function () {
if ('#leftmenu:empty') {
$('#menuTitleWrapper').remove();
$('#middlemenu').css({ 'right': '0', 'position': 'absolute' });
$('#PageContent').css({ 'top': '30px', 'position': 'relative' });
}
});
Myślę, że to już blisko, ale nie mogę dowiedzieć się, jak napisać kod do przetestowania #leftmenu jest puste. Każda pomoc jest mile widziana!
trim()
działa idealnie dla mnie. Musiałem usunąć kolumnę w Sharepoint, która dodawała trochę spacji, w którejtrim()
znajduje się. Dzięki..text()
ponieważ mógłbyś mieć komentarz w „pustym” kontenerze, a więc anitrim
nie:empty
działałby. Thx.html()
jeśli kontener ma bardzo długą zawartość HTML?Zależy, co masz na myśli mówiąc „pusty”.
Aby sprawdzić, czy nie ma tekstu (pozwala to na elementy podrzędne, które same są puste):
Aby sprawdzić, czy nie ma elementów podrzędnych ani tekstu:
Lub,
źródło
Jeśli chcesz szybko zobaczyć, jak sprawdzać puste elementy div, sugeruję wypróbowanie tego linku:
http://html-tuts.com/check-if-html-element-is-empty-or-has-children-tags/
Poniżej kilka krótkich przykładów:
Korzystanie z CSS
Jeśli twój div jest pusty bez niczego, nawet bez spacji, możesz użyć CSS:
Niestety nie ma selektora CSS, który wybierałby poprzedni element siostrzany. Jest tylko dla następnego elementu rodzeństwa:
x ~ y
Korzystanie z jQuery
Sprawdzanie długości tekstu elementu funkcją text ()
Sprawdź, czy element zawiera jakieś tagi podrzędne
Sprawdź puste elementy, jeśli mają spacje
źródło
Możesz rozszerzyć jQuery funkcjonalność następujący sposób:
Poszerzać :
Posługiwać się :
źródło
Spróbuj tego:
Nie jest najładniejsza, ale powinna działać. Sprawdza, czy innerHTML (zawartość #leftmenu) jest pustym łańcuchem (tj. Nie ma w nim nic).
źródło
W moim przypadku miałem wiele elementów do ukrycia na document.ready. To jest funkcja (filtr), która do tej pory działała u mnie:
lub .remove () zamiast .hide (), cokolwiek wolisz.
FYI: W szczególności jest to rozwiązanie, którego używam do ukrywania irytujących pustych komórek tabeli w programie SharePoint (dodatkowo z warunkiem „|| $ (this) .children („ menu ”). Length”.
źródło
źródło
Spotkałem się z tym dzisiaj i przyjęte odpowiedzi nie działają dla mnie. Oto jak to zrobiłem.
Moje rozwiązanie sprawdza, czy w elemencie div są jakieś elementy, więc nadal oznaczałoby element div jako pusty, jeśli jest w nim tylko tekst.
źródło
również możesz tego użyć:
Myślę, że to zadziała!
źródło
źródło