/ / Vyhodnotiť v JQuery - javascript, jQuery

Vyhodnotiť v Jquery - javascript, jquery

Len sa pýtam, či je možné previesť nasledujúce do príkazu IF v Javascripte:

$(".Nav table tr:has(table.navheader) + tr:has(table.navitem)").addClass("linksbelow");

Príklad:

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");

odpovede:

3 pre odpoveď č. 1

Dalo by sa to len takto:

$(".Nav table .navheader").addClass("Nolinksbelow");
$(".Nav table tr:has(table.navheader) + tr:has(table.navitem)").addClass("linksbelow").find(".navheader").addClass("linksbelow").removeClass("Nolinksbelow");

Tu začínam predpokladom, že nie .navheaders odkazy, potom choďte použiť linksbelow triedy ako predtým, a potom (tu je dôležitý kúsok) Nájsť() vhodný .navheader deti a opravte ich odstránením (teraz nesprávne) Nolinksbelow triedy a pridanie správnej linksbelow trieda.


1 pre odpoveď č. 2

Tu je môj odhad toho, čo by ste mohli 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 pre odpoveď č. 3

Nie ste si istí, na čo sa pýtate, potrebujete iba syntax, ak v jazyku js? Skúste toto


0 pre odpoveď č. 4

Uvedomujete si, že jQuery je javascript nie?

Implicitne je preto odpoveď na vašu otázku „áno“, ale nakoniec s trochou javascriptu, ktorý sa cíti podozrivo podobný malej časti jQuery ...


0 pre odpoveď č. 5

Nesledujem, ako sa váš prvý riadok kódu týka „Príkladu“. Mohli by ste opísať účinok, ktorý sa snažíte dosiahnuť slovami?

Váš prvý riadok znie:

(1) Pridajte triedu linksbelow všetkým tr prvky, ktoré obsahujú table.navitem okamžite po a tr ktorý obsahuje a table.navheader vnútri .Nav table

A príklad znie:

(2) Pridajte triedu do každého prvku, ktorý sa zhoduje .Nav table .navheader, Meno triedy závisí od výsledku (1). Ak bola operácia v (1) úspešná (pravdepodobne to znamená, že sa zhoduje s niektorými prvkami), potom by malo byť meno triedy linksbelow, inak Nolinksbelow.