jQuery slideUp работает как положено, slideDown не работает - PullRequest
0 голосов
/ 25 ноября 2018

Этот код оборачивает флажок, метку и br в div, чтобы он мог анимировать удаление div после завершения анимации ... или что он должен делать.

jQuery slideUp работает, как и ожидалось, ноSlideDown не занимает 400 мс.Вместо этого он переходит в 0 мс.Может кто-нибудь объяснить, почему?

Вот Скрипка .

function showHide(elements, num, action) {
  jQuery.map(elements, function(itm) {
    var element = jQuery('input[type=checkbox][value=\"' + itm + '\"]');
    var toWrap = element.add(element.nextAll().slice(0, num));
    toWrap.wrapAll('<div />');
    switch (action) {
      case 'show':
        element.parent().show(0, function() {
          element.unwrap('div');
        });
        break;
      case 'hide':
        element.parent().hide(0, function() {
          element.unwrap('div');
        });
        break;
      case 'slideDown':
        element.parent().slideDown(400, function() {
          element.unwrap('div');
        });
        break;
      case 'slideUp':
        element.parent().slideUp(400, function() {
          element.unwrap('div');
        });
        break;
      default:
    } // switch
  })
}

var elems = ["option 1", "option 2", "option 3", "option 4", "option 5"];
showHide(elems, 2, "slideUp");
setTimeout(function() {
  showHide(elems, 2, "slideDown");
}, 500);
div {
  border: solid 1px #ddd;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="bfElementGroup" id="bfElementGroup4251">
    <input class="ff_elem" type="checkbox" name="ff_nm_whyapply[]" value="option 1" id="ff_elem4251">
    <label class="bfGroupLabel" id="bfGroupLabel4251" for="ff_elem4251">Option 1</label>
    <br>
    <input class="ff_elem" type="checkbox" name="ff_nm_whyapply[]" value="option 2" id="ff_elem4251_1">
    <label class="bfGroupLabel" id="bfGroupLabel4251_1" for="ff_elem4251_1">Option 2</label>
    <br>
    <input class="ff_elem" type="checkbox" name="ff_nm_whyapply[]" value="option 3" id="ff_elem4251_2">
    <label class="bfGroupLabel" id="bfGroupLabel4251_2" for="ff_elem4251_2">Option 3</label>
    <br>
    <input class="ff_elem" type="checkbox" name="ff_nm_whyapply[]" value="option 4" id="ff_elem4251_3">
    <label class="bfGroupLabel" id="bfGroupLabel4251_3" for="ff_elem4251_3">Option 4</label>
    <br>
    <input class="ff_elem" type="checkbox" name="ff_nm_whyapply[]" value="option 5" id="ff_elem4251_4">
    <label class="bfGroupLabel" id="bfGroupLabel4251_4" for="ff_elem4251_4">Option 5</label>
    <br>
</span>
...