Zastanawiam się, czy możliwe jest przekonwertowanie poniższej instrukcji na instrukcję IF w Javascript:
$(".Nav table tr:has(table.navheader) + tr:has(table.navitem)").addClass("linksbelow");
Przykład:
IF $(".Nav table tr:has(table.navheader) + tr:has(table.navitem)").addClass("linksbelow"); = **TRUE** (
$(".Nav table .navheader").addClass("linksbelow");
)
**ELSE** (
$(".Nav table .navheader").addClass("Nolinksbelow");
Odpowiedzi:
3 dla odpowiedzi № 1Możesz po prostu podejść do tego w ten sposób:
$(".Nav table .navheader").addClass("Nolinksbelow");
$(".Nav table tr:has(table.navheader) + tr:has(table.navitem)").addClass("linksbelow").find(".navheader").addClass("linksbelow").removeClass("Nolinksbelow");
Zaczynam od założenia, że nie .navheader
mają linki, a następnie zastosuj linksbelow
klasa tak jak przedtem, a następnie (tutaj jest ważny bit) odnaleźć() właściwy .navheader
dzieci i popraw je, usuwając (teraz niepoprawne) Nolinksbelow
klasa i dodawanie poprawnych linksbelow
klasa.
1 dla odpowiedzi nr 2
Oto moje przypuszczenie, czego możesz chcieć:
var q = $(".Nav table tr:has(table.navheader) + tr:has(table.navitem)");
if (q.length) {
q.addClass("linksbelow");
$(".Nav table .navheader").addClass("linksbelow");
} else {
$(".Nav table .navheader").addClass("Nolinksbelow");
}
0 dla odpowiedzi № 3
Nie jesteś pewien, o co pytasz, po prostu potrzebujesz składni dla if / else in js? Spróbuj tego
0 dla odpowiedzi nr 4
Jesteś świadomy tego jquery jest javascript nie jesteś?
W domyśle odpowiedź na twoje pytanie brzmi zatem „tak”, ale w końcu masz trochę javascript, który jest podejrzanie podobny do małej części jquery ...
0 dla odpowiedzi № 5
Nie podążam za tym, jak twój pierwszy wiersz kodu odnosi się do „Przykładu”. Czy mógłbyś opisać efekt, który próbujesz osiągnąć słowami?
Twoja pierwsza linia brzmi:
(1) Dodaj klasę
linksbelow
do wszystkichtr
elementy zawierającetable.navitem
natychmiast potr
który zawieratable.navheader
w ciągu.Nav table
I przykład brzmi:
(2) Dodaj klasę do dowolnego pasującego elementu
.Nav table .navheader
. Nazwa klasy zależy od wyniku (1). Jeśli operacja w (1) zakończyła się powodzeniem (prawdopodobnie jeśli pasuje do dowolnych elementów), to nazwa klasy powinna byćlinksbelow
, InaczejNolinksbelow
.