您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds image direct links for imgur uploads.
当前为
// ==UserScript== // @name imgur.direct // @namespace imgurdir // @version 0.2.1 // @description Adds image direct links for imgur uploads. // @author Jakub Rychecký <[email protected]> // @license WTFPL 2 // @include *imgur.com* // ==/UserScript== /* * Worker timeout in miliseconds, 500 ms is recommended * @type {Number} */ var timeout = 500; /** * Prefix for direct link (choose http or https - https is recommended) * @type {String} */ var prefix = 'https'; /** * DOM initialization runs script worker which * @returns {undefined} */ $(function(){ imgur_direct_worker(); // The first run of script worker }); /** * Main script worker. Checks new images and put direct links to them. Repeats a few miliseconds again. * @returns {undefined} */ function imgur_direct_worker(){ $('.post-image-container').each(function(){ // Every image container on imgur upload page... var img = $(this); // Image container itself if(!has_direct_link(img) && is_image_ready(img)){ // Doesn't have direct link yet and image is fully uploaded... write_direct_link(img); // Create textarea with direct link } }); setTimeout(imgur_direct_worker, timeout); // Let's repeat } /** * Creates single direct link for image inside of image container. * @param {JQuery} img Image container jQuery element * @returns {String} Direct link to the image */ function get_direct_link(img){ var zoom = img.find('.image .zoom, .post-image .zoom'); // Zoom element for larger images (difference way to get direct link) if(zoom.length > 0){ // If it is larger image having zoom... var link = zoom.attr('href'); // Link from zoom iself }else{ // ...smaller image with no zoom... var link = img.find('.image img, .post-image img').attr('src'); // Link from image iself } link = 'https:'+link; // Link with https: return link; // Returns link } /** * Is image ready? Is it fully uploaded yet? * @param {JQuery} img Image container jQuery element * @returns {Boolean} Is image ready? */ function is_image_ready(img){ var link = get_direct_link(img); // Direct link from image return link.indexOf('undefined') == -1 && link.indexOf('blob') == -1; // If it DOES NOT contain 'undefined' or 'blob' strings, it's ready } /** * Checks if image container has direct link already. No need to write another one then. * @param {JQuery} img Image container jQuery element * @returns {Boolean} Has direct link already? */ function has_direct_link(img){ return img.find('.direct').length > 0; // Is direct link inside image container? } /** * Writes single textarea with image direct link inside imgur page. * @param {JQuery} img Image container jQuery element * @returns {undefined} */ function write_direct_link(img){ var css = { // CSS for direct link textarea 'width': '100%', 'background': '#2C2F34', 'text-align': 'center', 'font-weight': 'bold', 'font-size': '0.8em', 'height': '28px', 'margin-bottom': '0px' }; var html = $('<textarea onclick="$(this).select()">'+get_direct_link(img)+'</textarea>'); // Direct link textarea as JQuery element html.addClass('direct').css(css); // Putting class and CSS for textarea img.prepend(html); // Writes textarea }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址