frisch's Utilities

Combines several userscripts. Includes Shift-Copy, Image Transformation, Html Element Deletion

目前為 2016-11-17 提交的版本,檢視 最新版本

// ==UserScript==
// @name         frisch's Utilities
// @namespace    http://null.frisch-live.de/
// @version      0.22
// @description  Combines several userscripts. Includes Shift-Copy, Image Transformation, Html Element Deletion
// @author       frisch
// @grant        GM_openInTab
// @include        *
// ==/UserScript==
console.log("Initializing frisch Utilities...");

var jq = document.fExt.jq;

// #################### Shift-Copy - Start
var cpyText = '';
jq("body").on('mousedown',function(e){
    if(e.shiftKey) {
        e.preventDefault();
        var src = document.fExt.getSelection() || document.fExt.getSource(e.target);

        switch(e.which) {
            case 1:
                document.fExt.clipboard("Copy", src);
                return false;
            case 2:
                cpyText += src;
                cpyText += '\n';
                return false;
            default:
                return true;
        }

    }
    else
        return true;
});

jq(document).on("click", function(e){
    if(e.shiftKey && (e.which === 1 || e.which === 2)){
        e.preventDefault();
        return false;
    }
});

jq(document).keyup(function(e) {
    if (e.which === 16){
        if(cpyText.length > 0)
            document.fExt.clipboard("Copy", cpyText);

        cpyText = '';
    }
});
// #################### Shift-Copy - End

// #################### Html Elements Deleter - Start

var ctxDelHtml = document.fExt.ctxMenu.addItem("Delete Element", "deleteHtmlElement");
ctxDelHtml.Action = function(event, sender, actor) {
    if(delHtmlTarget !== undefined) {
        jq(delHtmlTarget).remove();
        delHtmlTarget = undefined;
    }
};
var delHtmlTarget;


// #################### Html Elements Deleter - End

// #################### GENERAL CTX HANDLING - Start
jq("#fExtContextMenu").on("fExtContextMenuOpening", function(event, actor){
    delHtmlTarget = actor;
});
// #################### GENERAL CTX HANDLING - End

// #################### Image Rotation - Start

var subTransf = document.fExt.ctxMenu.addSub("Transformation");

document.fExt.ctxMenu.addItem("Rotate left", "rotLeft", subTransf).Action = function(event, sender, actor){
    document.fExt.rotate(actor, -90);
};

document.fExt.ctxMenu.addItem("Rotate right", "rotRight", subTransf).Action = function(event, sender, actor){
    document.fExt.rotate(actor, 90);
};

document.fExt.ctxMenu.addItem("Zoom in", "zoomIn", subTransf).Action = function(event, sender, actor){
    document.fExt.zoomIn(actor, 20);
};

document.fExt.ctxMenu.addItem("Zoom out", "zoomOut", subTransf).Action = function(event, sender, actor){
    document.fExt.zoomOut(actor, 20);
};


// #################### Image Rotation - End

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址