Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Button change speed video
- // @namespace change_speed
- // @version 1
- // @description Button change speed video
- // @author nht
- // @include *
- // @grant unsafeWindow
- // @run-at document-start
- // ==/UserScript==
- function changeSpeed(self){
- var iframes = unsafeWindow.document.querySelectorAll('iframe');
- for(var i = 0; i < iframes.length; i++){
- try{
- iframes[i].contentWindow.postMessage(self.value, "*");
- }catch(e) { console.log(e);}
- }
- changeSpeedIframe(self.value);
- }
- function changeSpeedIframe(data){
- var speed = parseFloat(data);
- //console.log("find video tag");
- var videos = unsafeWindow.document.querySelectorAll('video');
- //console.log(videos);
- for(var i = 0; i < videos.length; i++){
- videos[i].playbackRate = speed;
- }
- }
- unsafeWindow.window.changeSpeed = changeSpeed;
- unsafeWindow.window.changeSpeedIframe = changeSpeedIframe;
- document.addEventListener('DOMContentLoaded',
- function() {
- var Speeds = ["1.00", "1.25", "1.50", "2.00", "300.0"];
- if (window.top === window.self) {
- var div = unsafeWindow.document.createElement("div");
- div.innerHTML = "";
- for(var i = 0; i < Speeds.length; i++){
- div.innerHTML += '<button style="margin-left: 5px; margin-bottom: 5px;" type="button" value="' + Speeds[i] + '" onClick=changeSpeed(this)>x' + Speeds[i] + '</button><br>';
- }
- div.setAttribute("style","position: -webkit-sticky; position:fixed; bottom: 2px; left:0; font-size: 15px; color: black;");
- //unsafeWindow.document.body.insertBefore(div, unsafeWindow.document.body.firstChild);
- unsafeWindow.document.body.appendChild(div);
- }else {
- unsafeWindow.window.onmessage = function(event){
- changeSpeedIframe(event.data);
- }
- }
- });
Add Comment
Please, Sign In to add comment