您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
add video download func in m.facebook.com,plus add video height to window height.
// ==UserScript== // @name add video download func in m.facebook.com // @namespace add video download func in m.facebook.com // @version 0.2 // @description add video download func in m.facebook.com,plus add video height to window height. // @author zero0evolution // @include /^https\:\/\/m\.facebook\.com/ // @grant none // ==/UserScript== // remove controlslist="nodownload" var addVideoDownloadFunc = (videoElem)=>{ if(videoElem.hasAttribute("controlslist")){ videoElem.controlsList.value = videoElem.controlsList.value.replace(/nodownload/img,"") } videoElem.style.setProperty("height","100vh","important") videoElem.style.setProperty("width","auto","important") var nextImgElem = videoElem.nextElementSibling if(nextImgElem instanceof Element && nextImgElem.matches(".img")){ nextImgElem.style.setProperty("height","100vh","important") nextImgElem.style.setProperty("width","auto","important") nextImgElem.style.setProperty("background-size","auto","important") } } var videoFilter = (topElem) =>{ if(topElem.matches("video")){ addVideoDownloadFunc(topElem) } for(let eachElem of topElem.querySelectorAll("video")){ addVideoDownloadFunc(eachElem) } } videoFilter(document.documentElement) //建立新的觀察物件 var observerObj = new MutationObserver( function (mutationObjs){ for(let eachMutationObj of mutationObjs){ for(let eachAddNode of eachMutationObj.addedNodes){ if(eachAddNode.nodeType === 1){ videoFilter(eachAddNode) } } } } ) observerObj.observe( document.documentElement,{ childList:true, subtree:true, } )