您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Automatically views the image when adding an item to your wanted list.
当前为
// ==UserScript== // @name Bricklink - Wanted List: Auto-View Image // @namespace http://badwing.com/ // @version 0.1 // @description Automatically views the image when adding an item to your wanted list. // @author Christopher Hiller // @include http://www.bricklink.com/wantedAddDetail.asp?* // @require //code.jquery.com/jquery-1.11.1.min.js // ==/UserScript== // reference to jQuery object of the <img> tag var img_thumb; /** * Given an ID, put the image in the placeholder. * @param {string} id Part ID */ var getImage = function getImage(id) { var src = '/getPic.asp?itemType=P&itemNo=' + id; $.ajaxQueue(src).done(function(src) { return function() { img_thumb.attr('src', src); }; }(src)); }; $(function() { var txt_itemId = $('input[name="p_selecteditemID"]'), val = txt_itemId.val(); img_thumb = $('img[name="img1"]'); // no longer necessary img_thumb.removeAttr('onerror'); if (val) { getImage(val); } // update the img as the user types txt_itemId.keyup(function() { var val = this.value; if (val) { getImage(this.value); } }); // hide unneccessary garbage $('input[name="imageType"]').next().css('visibility', 'hidden'); }); /*! jQuery Ajax Queue - v0.1.2pre - 2013-03-19 * https://github.com/gnarf37/jquery-ajaxQueue * Copyright (c) 2013 Corey Frang; Licensed MIT */ (function($) { // jQuery on an empty object, we are going to use this as our Queue var ajaxQueue = $({}); $.ajaxQueue = function( ajaxOpts ) { var jqXHR, dfd = $.Deferred(), promise = dfd.promise(); // run the actual query function doRequest( next ) { jqXHR = $.ajax( ajaxOpts ); jqXHR.done( dfd.resolve ) .fail( dfd.reject ) .then( next, next ); } // queue our ajax request ajaxQueue.queue( doRequest ); // add the abort method promise.abort = function( statusText ) { // proxy abort to the jqXHR if it is active if ( jqXHR ) { return jqXHR.abort( statusText ); } // if there wasn't already a jqXHR we need to remove from queue var queue = ajaxQueue.queue(), index = $.inArray( doRequest, queue ); if ( index > -1 ) { queue.splice( index, 1 ); } // and then reject the deferred dfd.rejectWith( ajaxOpts.context || ajaxOpts, [ promise, statusText, "" ] ); return promise; }; return promise; }; })(jQuery);