jQuery иногда не меняется источник видео - PullRequest
2 голосов
/ 04 августа 2020

На странице Wordpress. У меня есть тег, который автоматически воспроизводится при загрузке страницы. Каждый раз, когда я изменяю размер окна, воспроизведение видео возобновляется. У меня есть функция, которая каждый раз, если URL-адрес содержит (/ home / en), он меняет атрибут видео (sr c), но по какой-то причине иногда это не так.

jQuery(window).resize(function() {
        if(window.location.href.includes("/home/en")){
            jQuery('#testID').attr('src','https://test.mp4');
        }
    });

Кто-нибудь знает, в чем может быть проблема!

1 Ответ

2 голосов
/ 04 августа 2020

Не могу сказать вам, почему он иногда дает сбой, за исключением того, что ваш location не включает то, что вы хотите. Однако вам нужно проверить это только один раз.

//only need to check this once per window    
var PlayVideo = window.location.href.includes("/home/en");
var PlayTimeout = null;

jQuery(window).resize(function(){
    //adding a timeout to prevent multiple calls
    window.clearTimeout(PlayTimeout);
    PlayTimeout = window.setTimeout(function(){
        if(PlayVideo){
            jQuery('#testID').attr('src','https://test.mp4');
        }
        else{
            //if you reach this point, your condition is not what you want it to be
            console.log(window.location.href)
        }
    }, 1000)
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...