Greasy Fork

来自缓存

Greasy Fork is available in English.

ASIN链接生成器

生成ASIN链接的油猴脚本

当前为 2023-06-14 提交的版本,查看 最新版本

// ==UserScript==
// @name         ASIN链接生成器
// @namespace    https://www.example.com
// @version      1.0
// @description  生成ASIN链接的油猴脚本
// @match        https://www.amazon.com/*, https://www.amazon.ca/*, https://www.amazon.co.uk/*, https://www.amazon.de/*
// ==/UserScript==

(function() {
    'use strict';

    function createButton(text, style) {
        const button = document.createElement('button');
        button.textContent = text;
        button.style.position = 'fixed';
        button.style[style] = '20px';
        return button;
    }

    function openASINDetailsPage() {
        const asin = prompt('请输入ASIN');
        if (asin) {
            let baseUrl;
            if (location.hostname === 'www.amazon.com') {
                baseUrl = 'https://www.amazon.com/dp/';
            } else if (location.hostname === 'www.amazon.ca') {
                baseUrl = 'https://www.amazon.ca/dp/';
            } else if (location.hostname === 'www.amazon.co.uk') {
                baseUrl = 'https://www.amazon.co.uk/dp/';
            } else if (location.hostname === 'www.amazon.de') {
                baseUrl = 'https://www.amazon.de/dp/';
            }
            const url = baseUrl + asin;
            window.open(url, '_blank');
        }
    }

    function openBulkASIN() {
        const asinList = prompt('请输入多个ASIN,以换行符分隔');
        if (asinList) {
            let baseUrl;
            if (location.hostname === 'www.amazon.com') {
                baseUrl = 'https://www.amazon.com/s?rh=p_78%3A';
            } else if (location.hostname === 'www.amazon.ca') {
                baseUrl = 'https://www.amazon.ca/s?rh=p_78%3A';
            } else if (location.hostname === 'www.amazon.co.uk') {
                baseUrl = 'https://www.amazon.co.uk/s?rh=p_78%3A';
            } else if (location.hostname === 'www.amazon.de') {
                baseUrl = 'https://www.amazon.de/s?rh=p_78%3A';
            }
            const asinArray = asinList.split('\n').map(asin => asin.trim());
            const url = baseUrl + asinArray.join('%7C');
            window.open(url, '_blank');
        }
    }

    const openASINButton = createButton('打开ASIN详情页', 'left');
    const openBulkASINButton = createButton('打开批量ASIN', 'right');

    document.body.appendChild(openASINButton);
    document.body.appendChild(openBulkASINButton);

    openASINButton.addEventListener('click', openASINDetailsPage);
    openBulkASINButton.addEventListener('click', openBulkASIN);
})();