You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

多DOM元素任一存在时简化body添加addClass方法的技术问询

更简洁的实现方式

当然有更清爽的写法啦!你可以利用jQuery的多选择器语法,把所有需要判断的DOM元素选择器合并成一个,只需要一次判断就能完成逻辑:

// 合并选择器,一次判断搞定
if ($('.blog-entry, .contact-form, .fileshare').length) {
  $('body').addClass('stock-plugin');
}

原理说明:

  • jQuery支持用逗号分隔多个选择器,这会匹配所有符合任意一个选择器的元素
  • 只要其中任意一个目标元素存在,length属性就会大于0(在条件判断里非0值会被视为true),所以直接判断length就行,不用写> 0

如果追求极致简洁,还可以用短路求值的写法,一行搞定:

$('.blog-entry, .contact-form, .fileshare').length && $('body').addClass('stock-plugin');

这种写法和之前的逻辑完全一致,但省去了if语句,代码更紧凑,同时可读性也没打折扣~

内容的提问来源于stack exchange,提问作者KulerGary

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:11:25