Twitter Image 1-Click Download Background Space

Make the background area of a Twitter-hosted image (like an address ending in .jpg) a clickable download-prompt to image itself. Think of it like 'left click empty space == save-as'.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Twitter Image 1-Click Download Background Space
// @version      0.4
// @description  Make the background area of a Twitter-hosted image (like an address ending in .jpg) a clickable download-prompt to image itself. Think of it like 'left click empty space == save-as'.
// @author       Cro
// @match        https://pbs.twimg.com/media/*
// @grant        none
// @namespace https://greasyfork.org/users/10865
// ==/UserScript==
(function () {
    'use strict';
    var img = document.getElementsByTagName('img')[0];
    var body = document.getElementsByTagName('body')[0];

    if (img && body)
    {
        var src = img.getAttribute('src');

        if (src)
        {
            var a = document.createElement('a');

            a.setAttribute('href', src);
            a.setAttribute('download', src.substr(src.lastIndexOf('/') + 1).replace(/:.*/, ''));
            a.style.setProperty('position', 'absolute');
            a.style.setProperty('height', '100%');
            a.style.setProperty('width', '100%');
            a.style.setProperty('z-index', '-1');

            body.appendChild(a);
            body.onclick = function (evt)
            {
                if (evt.target == body)
                {
                    a.click();
                }
            };
        }
    }
})();