JSFiddle - React, Tailwind, and code Playground

by Brett Gaynor

HTML

<script src="//code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<link rel="stylesheet" href="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- 
  Bootstrap docs: https://getbootstrap.com/docs
-->

<div class="container">
  <div class="row">
    <div class="col">
      <a href="#" data-toggle="modal" data-target="#myModal" data-image-url="https://via.placeholder.com/150">
        <img src="https://via.placeholder.com/150">
      </a>
    </div>
    <div class="col">
      <a href="#" data-toggle="modal" data-target="#myModal" data-image-url="https://via.placeholder.com/250">
        <img src="https://via.placeholder.com/250">
      </a>
    </div>
  </div>
</div>

<div class="modal fade" id="myModal" tabindex="-1" role="dialog">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title">Modal title</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <img src=""/>
      </div>
    </div>
  </div>
</div>

JavaScript

$("#myModal").on("shown.bs.modal", function(event) {
  $(this).find('.modal-body img').attr('src', $(event.relatedTarget).data('image-url'))
});