私は別の変数に分を格納し、その上にモジュラス演算子を使ってmins%10
を使って、0
と等しいかどうかを調べました。
function time() {
var hours = new Date().getHours(),
mins = new Date().getMinutes(),
secs = new Date().getSeconds();
$("#time").text(hours + ":" + mins + ":" + secs);
if(mins%10 == 0) {
console.log('sending to commercial.php');
//location.href = 'commercial.php';
loadVideo();
}
}
//setInterval(time, 1000);
time();
function loadVideo(){
console.log('loading video');
$('<iframe>', {
src: 'https://www.youtube.com/embed/dQw4w9WgXcQ?rel=0&autoplay=1',
width: "560",
height: "315",
id: 'myFrame',
frameborder: 0,
scrolling: 'no'
}).appendTo('.frame');
}
イベントが発生した場合は、ビデオを読み込みます。あなたが新しいページにリダイレクトしているかどうかはわかりませんでした(これはlocation.href
で行うことができますか、ページに追加するだけの場合はiframeをページに追加する方法をとっていました)。
私の例https://jsfiddle.net/enigmarm/rrgbfa8x/1/
ビデオがすでにロードされているかどうかを記録しておきたいので、1分間に同じビデオを繰り返し更新するだけではありません。私のフィドルでは、if
ブロックに1==1
を追加しました。これはあなたのビデオがあなたの既存のページにどのように読み込まれているか見ることができます。
以下のためにこれを表示するには、オング、私はあなたからのビデオ/商用をロードしている場所に依存しているとします。理想的には、ビデオプレーヤーにはタップできるイベントステータスがあります。したがって、ビデオの再生が停止すると、それを検出してスライドショーに戻ることができます。 YouTube's Player API has onStateChange。そうしないと、各コマーシャルがかかりますし、その後、30秒(または任意の長さ)の後に、あなたがスライドに戻るどのくらい知っている必要があります。
あなたはそれがフェードイン持つために探しているとして、あなたはjQueryのfadeIn
functionを使用することができます。新しい要素を追加するときにこれを機能させるには、最初に要素を非表示にする必要がありますdisplay: none;
。私の更新バイオリンで:https://jsfiddle.net/enigmarm/rrgbfa8x/3/私はちょうどiframe {display:none;}, then used
.fadeIn(3000)to fade it in over 3 seconds. To have it fade out, you can look at jQuery's [
フェードアウト() `]あなたの応答のための3
function loadVideo() {
console.log('loading video');
$('<iframe>', {
src: 'https://www.youtube.com/embed/dQw4w9WgXcQ?rel=0&autoplay=1',
width: "560",
height: "315",
id: 'myFrame',
frameborder: 0,
scrolling: 'no'
}).appendTo('.frame').fadeIn(3000);
}
これは大きな助けとなりました!あなたが私に与えたものを取って、さまざまなページを表示するように変更しました。 YouTubeのapiセクションがインストールされ、動作しています。 index.phpとcommercial.phpの間の遷移を簡単に行う方法はありますか?再度、感謝します! – mrmills129
問題ありません。それを行う方法があります。 CSSで追加している要素を隠す必要があり、jqueryの 'fadeIn()'を使うことができます。私の更新された答えを見てください。 – EnigmaRM