代码之家  ›  专栏  ›  技术社区  ›  user1757383

第一次单击时附加,第二次单击时分离

  •  0
  • user1757383  · 技术社区  · 6 年前

    我有一个Jquery函数,在第一个按钮上单击它是分离mainFTL,在第二个按钮上单击它是附加它,但我希望函数做相反的事情。首先单击“附加”,然后单击“分离”。谢谢。

    <button type="button" name="mainFTLbutton" id="mainFTLbutton" class="btn btn-success btn-block">FTL - Full Truckload</button>
    
    $(document).ready(function() {
          var p;
    
          $('#mainFTLbutton').click(function() {
    
            $('#mainFTL').show();
            if (p) {
              p.appendTo('.appendFTL');
              p = null;
    
            } else {
              p = $('#mainFTL').detach();
            }
          });
        });
    
    2 回复  |  直到 6 年前
        1
  •  0
  •   dysfunc    6 年前

    $(document).ready(function() {
      // cache your selectors
      var main = $('#mainFTL'),
          btn = $('#mainFTLbutton');
      
      btn.click(function(){
        // check if the element is visible (it will only be visible when appended)
        if(main.is(':visible')){
          main.detach();
        }else{
          main.appendTo('.appendFTL').show();
        }
      });
    });
    #mainFTL {
     display: none;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    
    <div id="mainFTL">Hello</div>
    
    <div class="appendFTL"></div>
    
    <button type="button" name="mainFTLbutton" id="mainFTLbutton" class="btn btn-success btn-block">FTL - Full Truckload</button>
        2
  •  0
  •   Taplar    6 年前

    然后只需查找元素并设置变量。

    var p = $('#mainFTL').detach();