只是想知道是否可以将以下内容转换为Javascript中的IF语句:
$('.Nav table tr:has(table.navheader) + tr:has(table.navitem)').addClass('linksbelow');
示例:
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');
答案 0 :(得分:3)
你可以这样接近它:
$('.Nav table .navheader').addClass('Nolinksbelow');
$('.Nav table tr:has(table.navheader) + tr:has(table.navitem)').addClass('linksbelow').find('.navheader').addClass('linksbelow').removeClass('Nolinksbelow');
这里我首先假设没有.navheader
有链接,然后按照之前的方式应用linksbelow
类,然后(这里是重要的一点) find()相应的.navheader
子项并通过删除(现在不正确的)Nolinksbelow
类并添加正确的linksbelow
类来更正这些。
答案 1 :(得分:1)
以下是我对你可能想要的东西的猜测:
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');
}
答案 2 :(得分:0)
不确定你在问什么,你只需要js中if / else的语法? Try this
答案 3 :(得分:0)
你知道jquery 是 javascript不是你吗?
因此,你的问题的回答是“肯定的”,但是你最终会得到一些javascript,这些javascript与jquery的一小部分相似......
答案 4 :(得分:0)
我没有关注你的第一行代码与“示例”的关系。你能用文字描述你想要达到的效果吗?
你的第一行是:
(1)将班级
linksbelow
添加到tr
的所有table.navitem
元素后面,tr
后面包含table.navheader
.Nav table
1}}
示例如下:
(2)将类添加到与
.Nav table .navheader
匹配的任何元素。 classname取决于(1)的结果。如果(1)中的操作成功(可能意味着它与任何元素匹配),则类名应为linksbelow
,否则为Nolinksbelow
。