Добавить при первом нажатии и отсоединить при втором нажатии - PullRequest
0 голосов
/ 05 сентября 2018

У меня есть эта функция 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 ]

0 голосов
/ 05 сентября 2018

Попробуйте это:

$(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>
0 голосов
/ 05 сентября 2018

Затем просто найдите элемент и установите переменную.

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

Тогда p будет существовать при первом клике и добавит его.

...