您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Hide video and only play audio on YouTube
- // ==UserScript==
- // @name YouTube Video Only
- // @name:en YouTube Video Only
- // @namespace https://greasyfork.org/users/44041
- // @include http://*youtube.*/*watch*
- // @include https://*youtube.*/*watch*
- // @version 1
- // @grant none
- // @description Hide video and only play audio on YouTube
- // @require http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.js
- // @locale
- // ==/UserScript==
- $('video').ready(function() {
- //$('video').css('display','none');
- console.log('video ready');
- var video = document.getElementsByTagName("video")[0];
- if(video) {
- video.addEventListener("playing", function() {
- //$('video').css('z-index','-9999');
- //$('video').css('width','0');
- wallPattern.init();
- $('#canvas').ready();
- //$('.html5-video-container').css('display','none');
- console.error("playing");
- })
- } else {
- console.error("Video element not found");
- }
- });
- jQuery(function($){
- //$('video').css('width','0');
- var _highest = 0;
- $("div").each(function() {
- var _current = parseInt($(this).css("zIndex"), 10);
- if(_current > _highest) {
- _highest = _current + 1;
- }
- });
- //$('.html5-video-container').append('<div style="position:absolute;z-index:'+_highest+';background:#ecebeb;border:1px solid #333;border-radius:5px;height:360px;width:640px;background-image: url("http://i.imgur.com/iZHYO4N.jpg");"> </div>');
- $('.html5-video-container').append('<canvas id="canvas" onload="wallPattern.init();" style="position:absolute;z-index:'+_highest+';border-radius:5px;height:360px;width:640px;"> </div>');
- $('#canvas').ready(function() {
- console.log('loaded');
- wallPattern.init();
- });
- });
- var wallPattern = {
- // Settings
- spacingX: 55,
- spacingY: 35,
- offsetVariance: 13,
- baseRadius: 55,
- // Other Globals
- points: [],
- canvas: null,
- context: null,
- init: function() {
- console.log('init');
- this.canvas = document.getElementById( 'canvas' );
- this.context = canvas.getContext( '2d' );
- this.canvas.width = 640;
- this.canvas.height = 360;
- this.preparePoints();
- this.createPattern();
- this.drawTitle();
- },
- drawTitle: function() {
- var rawtitletext = $('#eow-title').text().trim();
- var titletext = $('#eow-title').text().trim();
- //var titletext = rawtitletext.replace(/(.{1,32})(?:\n|$| )/g, "$1\n");
- //var titletext = "The quick brown fox jumps over the lazy dog The quick brown fox jumps over the lazy dog";
- this.context.fillStyle = "white";
- this.context.font = "bold 30px Helvetica";
- //this.context.fillText(titletext, (canvas.width / 2) - 17, (canvas.height / 2) + 8);
- this.context.textAlign = 'center';
- this.context.fillText(titletext, (canvas.width / 2), (canvas.height / 2));
- },
- preparePoints: function() {
- var width, height, i, j, k, offsetX, offsetY;
- var maxVariance = this.offsetVariance * 2;
- // Vertical spacing
- for ( i = this.spacingY; i < this.canvas.height; i += this.spacingY ) {
- var pointSet = [];
- // Horizontal spacing
- for(j = this.spacingX; j < this.canvas.width; j += this.spacingX ) {
- offsetX = Math.round((Math.random() * maxVariance) - this.offsetVariance);
- offsetY = Math.round((Math.random() * maxVariance) - this.offsetVariance);
- var offsetR = Math.round((Math.random() * maxVariance) - this.offsetVariance);
- pointSet.push( {x: j + offsetX, y: i + offsetY, radius: this.baseRadius + offsetR} )
- }
- this.points.push( this.shuffleArray( pointSet ) );
- }
- },
- createPattern: function() {
- this.context.beginPath();
- this.context.rect(0, 0, 640, 360);
- this.context.fillStyle = "black";
- this.context.fill();
- var i, j, k, currentPoints, currentPoint;
- for ( i = 0; i < this.points.length; i++ ) {
- currentPoints = this.points[i];
- for ( j = 0; j < currentPoints.length; j++ ) {
- currentPoint = currentPoints[j];
- for ( k = currentPoint.radius; k > 0; k-=10 ) {
- this.context.beginPath();
- this.context.arc(currentPoint.x, currentPoint.y, k ,0 , Math.PI*2, true);
- this.context.closePath();
- this.context.fillStyle='#000';
- this.context.strokeStyle='purple';
- this.context.fill();
- this.context.stroke();
- }
- }
- }
- },
- // Shuffle algorithm from: http://stackoverflow.com/questions/962802/is-it-correct-to-use-javascript-array-sort-method-for-shuffling
- shuffleArray: function( array ) {
- var tmp, current, top = array.length;
- if(top) while(--top) {
- current = Math.floor(Math.random() * (top + 1));
- tmp = array[current];
- array[current] = array[top];
- array[top] = tmp;
- }
- return array;
- }
- }
- //wallPattern.init();