For Bootstrap 4, which handles videos, images and pages...
$('a[data-modal]').on('click',function(){_x000D_
var $page = $(this).data('page');_x000D_
var $image = $(this).data('image');_x000D_
var $video = $(this).data('video');_x000D_
var $title = $(this).data('title');_x000D_
var $size = $(this).data('size');_x000D_
$('#quickview .modal-title').text($title);_x000D_
if ($size) { $('#quickview .modal-dialog').addClass('modal-'+$size); }_x000D_
if ($image) {_x000D_
$('#quickview .modal-body').html('<div class="text-center"><img class="img-fluid" src="'+$image+'" alt="'+$title+'"></div>');_x000D_
} else if ($video) {_x000D_
$('#quickview .modal-body').html('<div class="embed-responsive embed-responsive-16by9"><iframe class="embed-responsive-item" src="https://www.youtube-nocookie.com/embed/'+$video+'?autoplay=1" allowfullscreen></iframe></div>');_x000D_
}_x000D_
if ($page) {_x000D_
$('#quickview .modal-body').load($page,function(){_x000D_
$('#quickview').modal({show:true});_x000D_
});_x000D_
} else {_x000D_
$('#quickview').modal({show:true});_x000D_
}_x000D_
$('#quickview').on('hidden.bs.modal', function(){_x000D_
$('#quickview .modal-title').text('');_x000D_
$('#quickview .modal-body').html('');_x000D_
if ($size) { $('#quickview .modal-dialog').removeClass('modal-'+$size); }_x000D_
});_x000D_
});
_x000D_
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">_x000D_
_x000D_
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>_x000D_
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.bundle.min.js"></script>_x000D_
_x000D_
<div class="container my-4">_x000D_
_x000D_
<h3 class="mb-4">Bootstrap 4 Modal YouTube Videos, Images & Pages</h3>_x000D_
_x000D_
<a href="javascript:;" class="btn btn-primary" data-modal data-video="zpOULjyy-n8" data-title="Video Title" data-size="xl">Video</a>_x000D_
_x000D_
<a href="javascript:;" class="btn btn-primary" data-modal data-image="https://v4-alpha.getbootstrap.com/assets/brand/bootstrap-social-logo.png" data-title="Image Title" data-size="">Image</a>_x000D_
_x000D_
<a href="javascript:;" class="btn btn-primary" data-modal data-page="https://getbootstrap.com" data-title="Page Title" data-size="lg">Page *</a>_x000D_
_x000D_
<p class="mt-4">* Clicking this will break it, but it'll work using a local page!</p>_x000D_
_x000D_
</div>_x000D_
_x000D_
<div class="modal fade" id="quickview" tabindex="-1" role="dialog" aria-labelledby="quickview" aria-hidden="true">_x000D_
<div class="modal-dialog modal-dialog-scrollable modal-dialog-centered" role="document">_x000D_
<div class="modal-content">_x000D_
<div class="modal-header">_x000D_
<h5 class="modal-title">Title</h5>_x000D_
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>_x000D_
</div>_x000D_
<div class="modal-body"></div>_x000D_
</div>_x000D_
</div>_x000D_
</div>
_x000D_