jquery - 如何简化条件语句

标签 jquery

我正在尝试简化以下条件语句。有更好的方法吗?谢谢。

 if ($element.is('#resize')) {
     css.left =+ 20;
     css.top =+ 3;

     if ($('#holder .Main').length < 5 ) {
         img.css('display', 'none');
     }

     img.insertBefore($element);
     img.css(css);

 } else if($element.is('#bt_id3')) {
     css.left =+ 20;
     css.top =+ 3;

     if ($('#id .Main').length < 5 ) {
         img.css('display', 'none');
     }

     img.insertBefore($element);
     img.css(css);
 }

最佳答案

ifelse 子句之间唯一不同的是内部 if 中的选择器。您可以这样隔离它:

var eltId = false;
if ($element.is('#resize')) eltId = '#holder';
if ($element.is('#bt_id3')) eltId = '#id';
if( eltId !== false ) {
    css.left=+20;
    css.top=+3;
    if($(eltId + ' .Main').length<5){img.css('display', 'none');}
    img.insertBefore($element);
    img.css(css);
}

这使得它有点干燥。

关于jquery - 如何简化条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12358206/

相关文章:

JavaScript/Jquery/甘特图 Highcharts : On clicking over a task progress pop-up should get open

javascript - SortableJS 保持不可拖动项目固定

Javascript复杂的拖放排序

jquery - 如何使用 jQuery 将网站上的关键字转换为链接

javascript - 返回特定键的未定义 bool 值的 JSON 字符串的 JSON.parse

javascript - 更新 1 分钟后改变行的颜色

javascript - HTML 页面部分的小 map 在视口(viewport)中显示为固定 anchor

javascript - 从动态创建的 ajax 调用列表中读取结果

javascript - Jquery 移动 CDN 替代方案

javascript - jQuery UI 图像 slider