为什么此效果仅在第一次有效?

时间:2015-12-10 00:25:37

标签: jquery

我在stackoverflow上找到了这段有用的代码,但由于某些原因它只在第一次应用时才起作用而且再也不会......

如何让动画始终工作,而不仅仅是第一次?

来源:How to run jQuery fadeIn() and slideDown() simultaneously?

jQuery(document).ready(function( $ ) {

  var something3 = document.getElementById('nav-action');

  something3.style.cursor = 'pointer';

  something3.onclick = function() {

    $(".menu-item")
      .css('opacity', 0)
      .slideDown('slow')
      .animate(
        { opacity: 1 },
        { queue: false, duration: 'slow' }
      );

  });

这是我的CSS

.menu-item {
  font-size: 61px;
  font-weight: 100 !important;
  list-style: outside none none;
  margin-top: 12px;  list-style: none;
  padding: 5px; opacity:0;
  display:none;
}

1 个答案:

答案 0 :(得分:3)

它只运行一次的原因是因为fscanf()方法会将元素的.slideDown()设置为display,然后在每次其他点击时,您只会为不透明度设置动画。你可以链接block方法,以便在动画之前隐藏元素。

这样做会多次有效:

Updated Example

.hide()