Skip to content

Instantly share code, notes, and snippets.

@taikulawo
Last active May 4, 2020 09:00
Show Gist options
  • Save taikulawo/341b0513f9b22b1067a479225f3d6626 to your computer and use it in GitHub Desktop.
Save taikulawo/341b0513f9b22b1067a479225f3d6626 to your computer and use it in GitHub Desktop.
float youtube subtitles on screen, so that you can move it out of player! ---- a Tampermonkey script
// ==UserScript==
// @name Put Youtube subtitles on top of everything
// @namespace http://www.chaochaogege.com
// @version 0.2
// @description Use this script if you want subtitles float on entire screen!
// @author You
// @match https://www.youtube.com/watch?*
// @grant none
// @require https://greasyfork.org/scripts/402597-monitor-dom-change/code/monitor%20dom%20change.js?version=801281
// ==/UserScript==
!function() {
const over = document.querySelector('#primary-inner')
let right = ''
let left = ''
let top = ''
let bottom = ''
// const subtitlesdiv = document.querySelector('.caption-window')
monitordom(over,(lists) => {
if (lists.addedNodes.length > 0){
const n = lists.addedNodes[0]
if (typeof n.className == 'string' && n.className.includes('caption-window')) {
let stylelists = n.style
n.style.position = "fixed"
stylelists['top'] = top
stylelists['right'] = right
stylelists['left'] = left
stylelists['bottom'] = bottom
}
}
if(lists.type === 'attributes') {
if (typeof lists.target.className === 'string' && lists.target.className.includes('caption-window')) {
let stylelists = lists.target.style
top = stylelists['top']
bottom = stylelists['bottom']
left = stylelists['left']
right = stylelists['right']
}
}
},{attributes: true, childList: true, subtree: true})
over.style['z-index'] = 4000
over.style.position = 'relative'
}()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment