🏠 Home 

Greasy Fork is available in English.

Image Download with Ctrl+Click/Shift/MMB [GLOBAL]

Image downloading for most single-image pages, with Ctrl+Click, Shift or MMB-Click combinations

// ==UserScript==
// @name            Image Download with Ctrl+Click/Shift/MMB [GLOBAL]
// @namespace       imageSaving
// @description     Image downloading for most single-image pages, with Ctrl+Click, Shift or MMB-Click combinations
// @author          NightLancerX
// @match           *://*/*.jpg*
// @match           *://*/*.png*
// @match           *://*/*.jpeg*
// @match           *://*/*.gif*
// @version         2.5
// @homepageURL     https://github.com/NightLancer/PixivPreview
// @license         MIT License
// @grant           none
// @run-at          document-end
// ==/UserScript==
(function() {
'use strict';
let img = document.querySelectorAll('img')[0];
let imgSrc = img.src;
let main = function()
{
let anchor = document.createElement('a'), name;
name = (imgSrc.indexOf('?')>-1)? imgSrc.substring(imgSrc.lastIndexOf("/")+1, imgSrc.indexOf('?')): imgSrc.substring(imgSrc.lastIndexOf("/")+1);
try {name = decodeURI(name);} catch(e){};
anchor.href = img.src;
anchor.target = '_self';
anchor.download = name;
document.body.appendChild(anchor);
anchor.click();
main = ()=>{};
};
//save with Ctrl+Click
img.onclick = function(e){
if (e.ctrlKey){
e.preventDefault();
main();
}
};
//save with Shift
document.onkeyup = function(e){
if (e.keyCode == 16){
main();
}
};
//save with MMB-click
img.onmouseup = function(e){
if (e.button == 1){
main();
}
};
})();