Greasy Fork is available in English.

Translate_DB

一个非常呆的翻译插件,点击百度翻译图标,输入内容,选择语言,翻译/需要开启跨域请求,请点击始终允许.

Versione datata 10/04/2022. Vedi la nuova versione l'ultima versione.

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

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

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name         Translate_DB
// @namespace    https://zjzdmc.top
// @version      0.1
// @description  一个非常呆的翻译插件,点击百度翻译图标,输入内容,选择语言,翻译/需要开启跨域请求,请点击始终允许.
// @author       Datehoer
// @match        *://*/*
// @icon         https://zjzdmc.top/img/translate.png
// @grant        GM_xmlhttpRequest
// @grant        GM_download
// @require      https://code.jquery.com/jquery-3.6.0.min.js
// ==/UserScript==

(function() {
    const body = document.querySelector('body');
    console.log("hello world");
    let translate_body = document.createElement("div");
    translate_body.className = "translate_body"
    translate_body.style.backgroundImage = "url(https://zjzdmc.top/img/translate.png)";
    translate_body.style.backgroundRepeat = "no-repeat";
    translate_body.style.backgroundSize = "100%";
    translate_body.style.position = "fixed";
    translate_body.style.top = "50px";
    translate_body.style.right = "50px";
    translate_body.style.width = "35px";
    translate_body.style.height = "35px";
    translate_body.style.overflow = "hidden";
    translate_body.style.zIndex = '9999';
    translate_body.style.cursor = "pointer";
    translate_body.title = "点击翻译"
    let translate_box = document.createElement("div");
    translate_box.className = "translate_box"
    translate_box.style.position = "fixed";
    translate_box.style.zIndex = '99999';
    translate_box.style.top = "100px";
    translate_box.style.right = "100px";
    translate_box.style.display= 'flex';
    translate_box.style.width= '400px';
    translate_box.style.flexDirection= 'row';
    translate_box.style.flexWrap='wrap';
    translate_box.style.justifyContent= 'space-between';
    let translate_box_input = document.createElement("input");
    let translate_box_change = document.createElement("input");
    let translate_box_show = document.createElement("input");
    let translate_box_input_language = document.createElement("input");
    let translate_box_show_language = document.createElement("input");
    translate_box_input.type = "text"
    translate_box_change.type = "button"
    translate_box_show.type = "text"
    translate_box_input_language.type = "text"
    translate_box_input_language.value = "auto"
    translate_box_show_language.type = "text"
    translate_box_show_language.value = "zh-CN"
    translate_box_change.value = "翻译"
    translate_box.appendChild(translate_box_input);
    translate_box.appendChild(translate_box_change);
    translate_box.appendChild(translate_box_show);
    translate_box.appendChild(translate_box_input_language);
    translate_box.appendChild(translate_box_show_language);
    body.appendChild(translate_box);
    body.appendChild(translate_body);
    let image_test = new Image();
    image_test.src = 'https://zjzdmc.top/img/translate.png';
    setTimeout(()=>{
        if(image_test.width == 0){
            translate_body.style.backgroundImage = "url(https://raw.githubusercontent.com/datehoer/translate_tampermonkey/main/translate.png)";
        }
    },1000)
    $('.translate_box').hide()
    document.body.addEventListener('mousedown',()=>{
        document.body.addEventListener('mouseup',()=>{
            if(window.getSelection().toString().length > 0){
                translate_box_input.value = window.getSelection().toString();
            }
        })
    })
    translate_body.addEventListener("click",()=>{
        $('.translate_box').toggle();
    })
    translate_box_change.addEventListener("click",()=>{
        let input_value = translate_box_input.value;
        let input_language = translate_box_input_language.value;
        let show_language = translate_box_show_language.value;
        let link = "https://translate.google.cn/m?sl="+input_language+"&tl="+show_language+"&hl=en&q="+input_value;
        GM_xmlhttpRequest({
            method: "GET",
            url: link,
            onload: (res)=>{
                let v = res.responseText;
                let pattern = /<div class="result-container">(.*?)<\/div>/;
                console.log(v.match(pattern)[1])
                translate_box_show.value = v.match(pattern)[1];
            }
        })
        })
})();