モーダルのビデオが閉じられたときに再生されないようにしようとしています。</body>
問題は、モーダル スクリプトがモーダルを元の場所から終了タグの直前に移動することです。そのため、技術的にモーダル ウィンドウの上にビデオ スクリプトを停止すると、モーダルが閉じられた後にビデオの再生が停止することはありません。
これが私が使用するモーダルスクリプトですhttps://github.com/VodkaBears/Remodal
ビデオを停止するための JQUERY
var stopVideo = function ( element ) {
var video = element.querySelector( 'video' ); // script stops here with this error message: (index):684 Uncaught TypeError: Cannot read property 'querySelector' of null.
if ( video !== null ) {
video.stop();
}
};
$('.remodal-close').click(function(){
var id = this.id || this.getAttribute( 'data-remodal-id' );
var modal = document.querySelector( id );
//closePopup();
console.log("has video stopped? 1");
stopVideo( modal );
console.log("has video stopped? 2");
});
モーダルの HTML
<div class="remodal" data-remodal-id="modal" role="dialog" aria-labelledby="modal1Title" aria-describedby="modal1Desc">
<button data-remodal-action="close" class="remodal-close" aria-label="Close"></button>
<div class="video-container clearfix">
<div class="video clearfix">
<embed width="200" height="113" src="https://www.youtube.com/embed/xxxxxxxx?autoplay=1" frameborder="0" allowfullscreen>
</div>
</div>
</div>