NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript==
// @name Youtube embed to Hooktube
// @namespace Krul & Brood
// @description Scan page for youtube embeds and replace with a Hooktube embed.
// @include *
// @license MIT
// @version 2.1
// ==/UserScript==
var a = 0; //set to 1 to autoplay embedded videos present on initial page load (not recommended)
var b = 1; //set to 0 to not autoplay embedded videos that appear on page interaction
var observer = new MutationObserver(mutate);
observer.observe(document,{childList:true,attributes:true,subtree:true});
function mutate(){
go(b);
}
function go(auto){
var filter = Array.filter || Benchmark.filter;
var frames = document.getElementsByTagName("iframe");
frames = filter(frames, youtubeiFrame);
for(var i=0; i<frames.length; i++){
var frame = frames[i];
var src = frame.getAttribute('src');
var hookTube = src.replace('youtube', 'hooktube');
if(hookTube.indexOf('?') === -1){
hookTube += '?autoplay=' + auto;
}else{
hookTube += '&autoplay=' + auto;
}
frame.setAttribute('src', hookTube);
}
}
function youtubeiFrame(el) {
if(el.hasAttribute('src')){
return el.getAttribute('src').indexOf('youtube') !== -1;
}
return false;
}
go(a);