Итак, я взял подход к хранению минут в отдельной переменной, а затем с помощью оператора модуля на нем 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==1
в блок if
. Именно так вы можете видеть, как видео загружается на вашу существующую страницу.
Насколько я ong, чтобы отобразить это для, я полагаю, это зависит от того, где вы загружаете видео/рекламу. В идеале видеоплеер имеет статус события, к которому вы можете подключиться. Поэтому, когда видео перестает играть, вы можете обнаружить это и вернуться к слайд-шоу. 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 [
FADEOUT() `] 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 fadeIn и out? еще раз спасибо! – mrmills129
Нет проблем. Есть способ сделать это. Вам нужно будет скрыть элемент, который вы добавляете с помощью CSS, затем вы можете использовать jQuery 'fadeIn()'. См. Мой обновленный ответ. – EnigmaRM