JSFiddle - React, Tailwind, and code Playground

by Gwyn Milcote

HTML

<div class="griffname gnam">
    iiiiii<p>
    hjjjjj
    </p>uuu
</div>
<div class="biobox cbio">
    ikkkkkk<p>
    kkkkkkk
    </p>kkkkkkkkkkkkkkk
</div>

<a href="#" id="namegriff">Rename griff</a>
<p>
juuuk<br>kuuuj<br>rhkuuu<br>thhh
</p><a href="#" id="changebio">Change bio</a>

CSS

a.selected {
  background-color:#1F75CC;
  color:white;
  z-index:100;
}

.griffname {
  background-color:#FFFFFF;
  border:1px solid #999999;
  display:none;
  margin-top: 15px;
  margin-left: 35px;
  position:absolute;
  text-align:left;
  width:300px;
  z-index:50;
  padding: 20px;
}
.biobox {
  background-color:#FFFFFF;
  border:1px solid #999999;
  display:none;
  margin-top: 65px;
  margin-left: 88px;
  position:absolute;
  text-align:left;
  width:300px;
  z-index:50;
  padding: 20px;
}

JavaScript

function deselect(e) {
  $('.gnam').slideFadeToggle(function() {
    e.removeClass('selected');
  });    
}

$(function() {
  $('#namegriff').on('click', function() {
    if($(this).hasClass('selected')) {
      deselect($(this));               
    } else {
      $(this).addClass('selected');
      $('.gnam').slideFadeToggle();
    }
    return false;
  });

  $('.close').on('click', function() {
    deselect($('#namegriff'));
    return false;
  });
});


function deselect(e) {
  $('.cbio').slideFadeToggle(function() {
    e.removeClass('selected');
  });    
}

$(function() {
  $('#changebio').on('click', function() {
    if($(this).hasClass('selected')) {
      deselect($(this));               
    } else {
      $(this).addClass('selected');
      $('.cbio').slideFadeToggle();
    }
    return false;
  });

  $('.close').on('click', function() {
    deselect($('#changebio'));
    return false;
  });
});

$.fn.slideFadeToggle = function(easing, callback) {
  return this.animate({ opacity: 'toggle', height: 'toggle' }, 'fast', easing, callback);
};