<div class="gallery">
  <div>
    <img src="https://images.unsplash.com/photo-1573679472180-df7d6cbe22bf" alt="">
    <img src="https://images.unsplash.com/photo-1572917218430-5aa0e4e26012" alt="">
    <img src="https://images.unsplash.com/photo-1532274402911-5a369e4c4bb5" alt="">
    <img src="https://images.unsplash.com/photo-1524260855046-f743b3cdad07" alt="">
  </div>
</div>
.gallery{
  width:600px;
  height:400px;
  overflow:hidden;
  margin: 20px auto;
  border-radius:15px;
  div{
    display:flex;
    flex-wrap:wrap;
    height:100%;
    width:100%;
    transition: transform .25s ease-in-out;
    &.focus_0, &.focus_1, &.focus_2, &.focus_3{
      transform:scale(2);
    }
    &.focus_0{
      transform-origin: top left;
    }
    &.focus_1{
      transform-origin: top right;
    }
    &.focus_2{
      transform-origin: bottom left;
    }
    &.focus_3{
      transform-origin: bottom right;
    }
    img{
      width:50%;
      height:50%;
      object-fit:cover;
      cursor: pointer;
    }
    &.ss{
        filter:grayscale(100);
      }
  }
}
View Compiled
$('.gallery img').click(function(){
  var index = $('.gallery img').index(this);
  var className = 'focus_' + index;
  var parent = $(this).parent('div')
  
  if(!parent.hasClass(className)){
    parent.removeClass(function (index, css) {
      return (css.match (/\bfocus_\S+/g) || []).join(' ');
    }).addClass(className)
  } else {
    parent.removeClass(className)
  }
  
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js