Как выбрать встроенное видео, используя javascript? - PullRequest
0 голосов
/ 03 августа 2020

На моем веб-сайте есть встроенные видеоролики YouTube, например

<iframe src="https://www.youtube.com/embed/spBaumdWlgQ?feature=oembed">

У меня нет доступа к коду, просто все, что я могу делать в консоли.

В конце концов Я хочу изменить скорость воспроизведения сверх того, что позволяет пользовательский интерфейс YouTube. Но я не могу выбрать видео

var video = document.getElementsByTagName('video')[0]

Видео не существует!

(Если я проверю видео, оно в конечном итоге станет видимым для document, но это не относится к делу.

Я со временем хочу это сделать

video.playbackRate = 3

Ответы [ 2 ]

0 голосов
/ 03 августа 2020

Чтобы получить доступ к любому элементу внутри iframe, вам необходимо получить доступ к свойству contentWindow iframe. Что, в свою очередь, возвращает объект window. Используйте этот объект окна для доступа к чему-либо внутри iframe.

var iframe = document.querySelector('iframe'),video;
     if (iframe) {
         video = iframe.contentWindow.document.getElementsByTagName('video');
     }
  
      if (video) {
           video.playbackRate = 3
      }

Но одна вещь, поскольку это iframe видео YouTube, вы столкнетесь с проблемой CORS. И поэтому вы не сможете манипулировать данными iframe *

См. здесь , чтобы узнать больше о проблеме CORS в iframe

0 голосов
/ 03 августа 2020

сначала вам нужно выбрать iframe, затем выбрать элемент внутри iframe. это может сработать

var iframe = document.getElementById ("myFrame"); var elmnt = iframe.contentWindow.document.getElementsByTagName ("H1") [0]

...