0

私はjavascriptを使い慣れていないので、私はかなり長い間、私の注入されたスクリプトをリアルタイムで実行させる方法を理解しようとしていました。そして、最新のyoutubeミュージックビデオのURLをつかんでください。私の拡張機能は非常に基本的なものであり、それは利益のためではありません。私はちょうどそれをjavascriptとjqueryで遊ぶようにしました。JavaScriptはリアルタイムで更新されたリンクを取得

ここでは、リアルタイムで機能させたいコードセクションを示します。

$('#grab').click(function() { 

    function getId(url) { 
     var regExp = /^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/; 
     var match = url.match(regExp); 

     if (match && match[2].length == 11) { 
      return match[2]; 
     } else { 
      return 'error'; 
     } 
    } 

    src = $('iframe').attr('src'); 

    setInterval(function() { 
     src = $('iframe').attr('src'); 
    }, 10000); 

    window.open('http://youtubeinmp3.com/fetch/?video=http://www.youtube.com/watch?v=' + getId(src), '_blank'); 
}); 

関連リンク GitHub Chrome Extension

私の質問を読むのに時間を割いていただき、ありがとうございます。

+0

あなたの質問は何ですか?あなたは「リアルタイムで」何かを実行する方法を知りたがっていますか?それとも、リアルタイムで「YouTube」から物事を取り込む方法を知りたいのですか?また、「リアルタイムで」という意味で詳しく説明してください。 – kirkpatt

+0

dubtrackは、人々がDJをしてYouTubeミュージックビデオを再生できるウェブサイトです。現在、ページが読み込まれたときに再生されていた最初の動画を取得できますが、ページを更新しない限り、最初の動画から更新されません。 –

+0

意味、あなたはダブトラックやYouTubeをリフレッシュする必要がありますか? – kirkpatt

答えて

0

あなたは説明が下手だ(とあなたが望むものを反映するために、質問を編集したい場合があります)、基本的に問題はこれです:

  1. あなたは、ページ内のYouTubeの埋め込みを持って、特定のと動画IDはsrcです。
  2. 動画が変更されると、YT埋め込みAPIを使用してsrcを更新せずにそのようになります。
  3. したがって、srcだけを取得しようとすると、最新のビデオではなく最初にロードしたビデオです。

    1. あなたはplayer参照を取得するためにYT API自分を初期化しようとすることができます:

    は拡張として、私はそれを解決しようとする二つの方法を参照してください。私はそれがDubtrackのコードを壊すかわからない。

  4. iframeにスクリプトを挿入して、srcに依存する以外の方法で再生している動画を抽出することもできます。

これは問題を解決する方法であり、基本的に「ちょうど」ブックマークレットを提供しているということは障害になる可能性があります。

関連する問題