javascript - 优化 if 条件 jQuery
问题描述
我用代码写了这个条件。
我不确定它是否可以缩短或优化。还想知道这可以被认为是
if condition
一次编写和检查几件事的理想方式。
if(isMobile() && (jQuery("body").hasClass("catalog-category-view") || jQuery("body").hasClass("catalog-product-view") || jQuery("body").hasClass("wishlist-index-index")) && !jQuery('.prev_btn').length && !jQuery('.next_btn').length){
console.log('condition');
}
解决方案
您可以进行一些调整来缩短它:
- document.ready 处理程序中的别名
$
,因此您无需在jQuery
任何地方使用。 - 使用
is()
代替hasClass()
,因为前者接受多个类 - 合并
.prev_btn
到.next_btn
单个 jQuery 对象中以检查length
jQuery($ => {
if (isMobile() && $('body').is('.catalog-category-view, .catalog-product-view, .wishlist-index-index') && !$('.prev_btn, .next_btn').length) {
// do something...
}
});
推荐阅读
- delphi - Delphi/DevExpress 在复选框状态下同步主/详细信息
- build - windowsdriver.common.targets 丢失
- wpf - 在 DataTemplate 中格式化货币
- javascript - 如何在 Puppeteer 上跟踪弹出模式
- reactjs - 盖茨比:为什么 a.png 工作,但 b.png 返回错误:模块系统需要 emitFile?
- twitter-bootstrap - 我无法将 Bootstrap 添加到我的 rails 应用程序
- reactjs - 更改状态时更改具有 id 的状态的克隆
- python - 从 google colab 访问 google 驱动程序 - 失败(“意外错误响应:
- excel - 创建具有 2 个条件的查找公式 - 匹配 ID 和特定范围内的日期
- ruby-on-rails - 如何找到相同的记录并为每个导轨执行操作