Greasy Fork is available in English.
將新版推特的圖片轉為原畫質版本,並可以從右鍵取得圖片網址
当前为
// ==UserScript==
// @name View Twitter Origin Images
// @namespace http://greasyfork.icu
// @version 0.0.4
// @description 將新版推特的圖片轉為原畫質版本,並可以從右鍵取得圖片網址
// @author Pixmi
// @icon https://i.imgur.com/AmUaAWh.png
// @include https://twitter.com/*
// @include https://pbs.twimg.com/media/*
// @run-at document-end
// @grant none
// ==/UserScript==
/* jshint esversion: 6 */
if (window.location.href.includes('pbs.twimg.com/media')) {
let imgHref = location.href;
// if (!twimg_URL.test(imgHref)) {
if (imgHref.includes("https://pbs.twimg.com/media/") && !imgHref.match(/\?name=orig/)) {
let url = imgHref.replace('?format=','.').replace(/\&name=(\w+)/g,'?name=orig');
window.location.replace(url);
}
} else {
console.log('View Twitter Origin Images 0.0.4 start up.');
let rootmatch = document.evaluate("//div[@id='react-root']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
let rootnode = rootmatch.singleNodeValue;
//new Twitter UI
if (rootnode) {
let imgSet;
var callback = function (mutationsList, observer) {
for (let mutation of mutationsList) {
if (mutation.target.className.includes("css-1dbjc4n")) {
imgSet = mutation.target.getElementsByTagName('img');
let i;
for (i = 0; i < imgSet.length; i++) {
let imgSrc = imgSet[i].src;
if (imgSrc.includes("https://pbs.twimg.com/media/") && !imgSrc.match(/name=orig/)) {
console.log(imgSrc);
imgSet[i].src = imgSrc.replace('?format=','.').replace(/&name=(\w+)/g,'?name=orig');
}
}
}
}
};
const observeConfig = {
attributes: true,
childList: true,
subtree: true
};
const observer = new MutationObserver(callback);
observer.observe(document.body, observeConfig);
}
}