我不知道如何通过iframe执行自动播放脚本,但我找到了tampermonkey的脚本。我试图基于该代码做一些事情,但它没有工作,所以如果有人可以写一些例子。这是带有自动播放和autonext的脚本,但我只需要自动播放。我将从autoplay的例子中做autonext。
function() {
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
var nodes = mutation.addedNodes;
for (var i = 0; i < nodes.length; i++) {
if (nodes[i].nodeName == 'VIDEO') {
nodes[i].setAttribute('preload', 'none');
nodes[i].removeAttribute('autoplay');
}
}
});
});
observer.observe(document.documentElement, {
childList: true,
subtree: true
});
})();
$(document).ready(function () {
var AutPlay = GM_getValue('AutPlay', 1);
var NxtPlay = GM_getValue('NxtPlay', 1);
var check1 = '';
var check2 = '';
GM_setValue('EpEnded', 0);
if (AutPlay === 1) {
check1 = 'checked';
} else {
check1 = '';
}
if (NxtPlay === 1) {
check2 = 'checked';
} else {
check2 = '';
}
var checkbox1 = '<input class="hidden-xs-up" id="AutPlay" type="checkbox" '+check1+' /><label class="AutPlay" for="AutPlay">AutoPlay</label></input>';
var checkbox2 = '<input class="hidden-xs-up" id="NxtPlay" type="checkbox" '+check2+' /><label class="NxtPlay" for="NxtPlay">NextPlay</label></input>';
$('#cont').append(checkbox1+checkbox2);
$('#AutPlay').change(function () {
if ($('#AutPlay').is(':checked')) {
AutPlay = 1;
GM_setValue('AutPlay', 1);
} else {
AutPlay = 0;
GM_setValue('AutPlay', 0);
}
});
$('#NxtPlay').change(function () {
if ($('#NxtPlay').is(':checked')) {
NxtPlay = 1;
GM_setValue('NxtPlay', 1);
} else {
NxtPlay = 0;
GM_setValue('NxtPlay', 0);
}
});
$('#olvideo_html5_api').on('ended', function (e) {
GM_setValue('EpEnded', 1);
});
$('#videojs_html5_api').on('ended', function (e) {
GM_setValue('EpEnded', 1);
});
$('#mgvideo_html5_api').on('ended', function (e) {
GM_setValue('EpEnded', 1);
});
$('#my_video_1_html5_api').on('ended', function (e) {
GM_setValue('EpEnded', 1);
});
setInterval(function(){
var EpEnded = GM_getValue('EpEnded', 0);
if( EpEnded === 1 ) {
Nxt();
GM_setValue('EpEnded', 0);
}
}, 1000); /* interval of video state check. */
function Nxt() {
if (NxtPlay === 1) {
$('.nextbtn').click();
}
}
window.onload = function() {
if (AutPlay === 1) {
$('#videooverlay').click();
$('.vjs-big-play-button').click();
}
};
})();
答案 0 :(得分:0)
John Doe不对。你绝对可以使用JavaScript和&amp ;;模拟鼠标事件。 jQuery的。实际上你可以做更多的事情。我为dooplay编写了一个专门用于openload的binge(autonext / autoplay)功能。它执行以下操作
1)在播放器页面中激活时创建cookie。在视频播放器广告之后,脚本执行(等待adcode div去生成)
2)jQuery从容器中抓取时间码。用于表演结束和剧本移动到下一集。
3)模拟鼠标事件,使容器能够传递广告,最大化和最小化。
如果您对此感兴趣,我可以向您出售许可证。