JQUERY slidetoggle无效

时间:2013-10-28 21:32:57

标签: jquery if-statement toggle slide

我不明白为什么jquery脚本无效。 这是样本:

  $(document).ready(function(){
      $('#mygtukas-js').click(function(){
        $(this).data('clicked', true);
      });

      if($('#mygtukas-js').data('clicked')){
        $(this).next('#turinys').slideToggle(500);
      }
      else {
        $('#turinys').hide();
      }
  });

JSFIDDLE:http://jsfiddle.net/5NmK9/

2 个答案:

答案 0 :(得分:1)

您的slideToggle块在document.ready上调用一次。单击#mygtukas-js时,它会将'clicked'更改为true,但不会调用if / else块。

你应该让if / else块在click之后调用的代码中,或者让它在自己的事件监听器中。

答案 1 :(得分:1)

这应该足够了:

$(document).ready(function(){
    $('#mygtukas-js').on("click", function() {
        // The line below can be removed if you're not using the data
        // value anywhere else.
        $(this).data('clicked', true);

        $(this).next('#turinys').slideToggle(500);
    });
});

.slideToggle()将执行show / hide。

演示:http://jsfiddle.net/5NmK9/1/