twitter_img_orig

ツイッターの画像リンクを:orig#.jpgに張り替える。

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

You will need to install an extension such as Tampermonkey to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript==
// @name        twitter_img_orig
// @namespace   http://catherine.v0cyc1pp.com/twitter_img_orig.user.js
// @match       https://twitter.com/*
// @author      greg10
// @run-at      document-start
// @license     GPL 3.0
// @version     0.3
// @require     http://code.jquery.com/jquery-3.2.0.min.js
// @grant       none
// @description ツイッターの画像リンクを:orig#.jpgに張り替える。
// @license     MIT
// ==/UserScript==
 
 
this.$ = this.jQuery = jQuery.noConflict(true);
 
 
 
//console.log("twitter_img_orig start");
 
function main() {
    var hostname = location.hostname;
    $(".tweet, .Gallery").find("img").each( function() {
        //console.log("this.text=" + $(this).text() );
        var src = $(this).attr("src");
        if ( src === null || src === undefined || src === "" ) {
            return;
        }
 
 
        // メディア画像以外のアイコンなどは無視する
        if ( src.indexOf( "pbs.twimg.com/media/" ) === -1 ) {
            return;
        }
 
        if ( src.indexOf( ":orig#." ) !== -1 ) {
            return;
        }
 
        src = src.replace( /:(small|large|orig).*$/, "");
 
        var ext = src.substr( src.length - 3, 3);
 
 
        var newsrc = src + ":orig#." + ext;
 
        $(this).attr("src", newsrc);
    });
}
 
main();
 
var observer = new MutationObserver(function(mutations) {
    observer.disconnect();
    main();
    observer.observe( document, config);
});
 
var config = { attributes: false, childList: true, characterData: false, subtree:true };
 
observer.observe( document, config);