0

图片描述

就是这个.slideDown(800).siblings().hide(800);一直重复,想简介一下代码。
其实每次改变的只是数字1,2,3.
刚开始可能代码思想跟逻辑都还不成熟,还望大神指点啊~

2017-01-22 提问

查看全部 5 个回答

6
//elClick是点击的元素的选择器字符串
//elMove是要动的那个
//speed是速度,不想自定义速度可以写死
function addClick(elClick, elMove, speed) {
    $(elClick).click(function() {
        $(elMove).slideDown(speed).siblings().hide(speed);
    });
}

包括你如果只想每次传数字进去也是可以的。内部$('Apr'+num) $('AprSmall_thing'+num)拼串就好了然后复用的函数参数只写num

推荐答案

2

已采纳

ES6:

for (let i = 1; i <= 3; i++)
    $(`.Apr${i}`).click(function () {
        $(`.AprSmall_thing${i}`).slideDown(800).siblings().hide(800);
    });

ES5:

for (var i = 1; i <= 3; i++)
    (function (i) {
      $('.Apr'+i).click(function () {
          $('.AprSmall_thing'+i).slideDown(800).siblings().hide(800);
      });
    })(i);

推广链接