Я создал модал в WordPress, используя этот код в пользовательском фрагменте и отображая его с помощью шорткода в WordPress.
echo" <img id='gallery-pic' src='$image_src'>
<div id='myModal' class='modal'>
<span class='close'>×</span>
<img class='modal-content' id='img01'>
<div id='caption'></div>
</div>
<script type=\"text/javascript\">
var modal = document.getElementById('myModal');
var img = document.getElementById('gallery-pic');
var modalImg = document.getElementById('img01');
var captionText = document.getElementById('caption');
img.onclick = function(){
document.body.style.overflow = 'hidden';
modal.style.display = 'block';
modalImg.src = this.src;
captionText.innerHTML = this.alt;
}
// Get the <span> element that closes the modal
var span = document.getElementsByClassName('close')[0];
// When the user clicks on <span> (x), close the modal
span.onclick = function() {
modal.style.display = 'none';
document.body.style.overflow = 'auto';
}
</script> ";
?>
document.body.style.overflow не работает на WordPress, но если я переключаю "переполнение" на "backgroundColor = 'yellow'", это работает. Как я могу удалить переполнение главной страницы после открытия модального окна?