2017-01-31 2 views
0

Я хочу проверить, существует ли атрибут autoplay в url iframe или нет. Если атрибут не существует, я хочу добавить «autoplay». Если он существует, я хочу изменить значение «autoplay = 1» на «autoplay = 0» и наоборот.Проверить атрибут autoplay в iframe src

У меня есть iframe с динамическим src. Теперь, когда я нажимаю значок автовоспроизведения, добавьте как https://www.youtube.com/embed/fffjZpMIHk?autoplay=1?autoplay=1. Поэтому я хочу проверить, существует ли атрибут, а затем его необходимо добавить.

<div class="video-container" id="video-container"> 
    <iframe src="https://www.youtube.com/embed/fffjZpMIHk" frameborder="0" allowfullscreen=""></iframe> 

Сценарий Я теперь с помощью:

$(".playButton").on('click',function() { 
    $(".flex-active-slide iframe")[0].src += "?autoplay=1"; 
    $('.flex-active-slide').contents().find("iframe").attr('src', function(i, oldSrc) { 
    return oldSrc.replace('autoplay=0', 'autoplay=1'); 
    }); 
}); 

Образец скрипку: Demo

+0

Доля ваш пример кода путем редактирования этого jsfiddle в вопросе - http://jsfiddle.net/ifinto/o2gxgz9r/ –

+0

пожалуйста, проверьте мой обновленный пост – user3386779

ответ

2

Не могли бы вы, пожалуйста, попробуйте ниже код:

$(function() { 
    $(".playButton").on('click',function() { 
     var iframeObj = $(".flex-active-slide iframe")[0]; 
     var currentURL = iframeObj.src; 

     if(currentURL.indexOf("autoplay=") == -1) 
     { 
      //autoplay not present in src; so lets add it 
      currentURL = currentURL + '?autoplay=1' 
     } 
     else{ 
      if(currentURL.indexOf("autoplay=1")>-1){ 
       //replace autoplay=1 with autoplay=0 
       currentURL = currentURL.replace('autoplay=1', 'autoplay=0'); 
      } 
      else 
      { 
       //replace autoplay=0 with autoplay=1 
       currentURL = currentURL.replace('autoplay=0', 'autoplay=1'); 
      } 
     } 

     iframeObj.src = currentURL; //set the newer src to iframe 

    }); 
}); 
0

Вы можете использовать метод String match. Проверьте ниже.

var isAutoPlay = "https://www.youtube.com/embed/jebJ9itYTJE?autoplay=0".match(/autoplay=([^&]*)/); 
if (isAutoPlay && isAutoPlay[1] == 1) { 
    return oldSrc.replace('autoplay=0', 'autoplay=1'); 
} 

Работа Пример: https://jsfiddle.net/ramsunvtech/dyutu19f/3/

Смежные вопросы