Greasy Fork is available in English.
一键搜图(让盗图狗不再得意,让你不再为祭品信息而烦恼)
当前为
// ==UserScript==
// @name 匿名版一键搜图
// @namespace http://zhihaofans.com
// @version 0.4.0
// @description 一键搜图(让盗图狗不再得意,让你不再为祭品信息而烦恼)
// @author zhihaofans
// @match https://h.nimingban.com/f/*
// @match https://h.nimingban.com/t/*
// @match http://www.kukuku.cc/t/*
// @match http://www.kukuku.cc/*
// @match https://boards.4chan.org/*/*
// @match http://boards.4chan.org/*/*
// @require https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js
// @grant none
// @note 开源地址:https://github.com/zhihaofans/Some-JavaScript/blob/master/imageboard.imagesearch.js
// @note Greasyfork地址:http://greasyfork.icu/zh-CN/scripts/21115
// @note 0.3.9: 用coffee-script重写了一遍
// @note 0.4.0: 删除了360搜索引擎,以图搜图适配了'4chan.org'
// @note generated by coffee-script
// ==/UserScript==
(function() {
var addLink, nmb_search, search_change, setting, setting_show, start;
jQuery.noConflict();
setting_show = 0;
nmb_search = {
'sogou': 'http://pic.sogou.com/ris?query=',
'baidu': 'http://image.baidu.com/n/pc_search?queryImageUrl=',
'google': 'https://www.google.com/searchbyimage?image_url=',
'saucenao': 'http://saucenao.com/search.php?db=999&url=',
'iqdb': 'http://www.iqdb.org/?url=',
'iisearch': 'http://iisearch.ddo.jp/front.php?mode=1&url=',
'tineye': 'http://tineye.com/search/?url='
};
setting = function() {
var li, nmb_select;
nmb_select = '<select id="html_search" name="html_search"' + 'onchange="localStorage.setItem(\'setting_search\',' + 'jQuery(\'#html_search\').val());' + 'alert(\'设置完毕(\' + this.value + \')即将刷新\');location.reload();">' + '<option value="baidu">baidu</option>' + '<option value="google">google</option>' + '<option value="sogou">sogou</option>' + '<option value="saucenao">saucenao</option>' + '<option value="iqdb">iqdb</option>' + '<option value="tineye">tineye</option>' + '<option value="iisearch">iisearch</option></select>';
if (localStorage.getItem('setting_search') === null || localStorage.getItem('setting_search') === void 0) {
localStorage.setItem('setting_search', 'baidu');
}
console.log(localStorage.setting_search in nmb_search);
if (localStorage.setting_search in nmb_search === false) {
localStorage.setItem('setting_search', 'baidu');
alert('设置错误,已初始化(baidu)\n即将刷新');
location.reload();
}
switch (location.hostname) {
case 'h.nimingban.com':
case 'www.kukuku.cc':
li = '<li><a href="javascript:void(0)" id="html_button_setting">' + '一键搜图</a></li> ' + nmb_select;
jQuery('ul.uk-breadcrumb:first').append(li);
break;
case 'boards.4chan.org':
li = '<li><label><input type="checkbox" class="menuOption"' + 'checked="checked">' + '以图搜图</label>' + '</li><li class="settings-tip">' + nmb_select + '</li>';
jQuery('div#settingsMenu > div > ul > ul:eq(5) > ul.settings-cat').prepend(li);
}
jQuery('#html_search option[value=\'' + localStorage.setting_search + '\']').prop('selected', true);
};
search_change = function(_search) {
localStorage.setItem('setting_search', _search);
alert('设置完毕(' + _search + ')\n即将刷新');
location.reload();
};
addLink = function(imgs) {
var a, a_1, img_link, imgs_num, nmb_img, nmb_link, results;
a_1 = 1;
a = 0;
imgs_num = imgs.length;
results = [];
while (a < imgs_num) {
nmb_img = imgs.eq(a);
a_1 = a + 1;
img_link = nmb_img.attr('href');
if (img_link.startsWith('//')) {
img_link = 'https:' + img_link;
}
img_link = encodeURIComponent(img_link);
nmb_link = '<a target="_blank" id="one_key_search_image_' + a_1 + '" href="' + nmb_search[localStorage.setting_search] + img_link + '">(←一键搜图)</a>';
nmb_img.prop('outerHTML', nmb_img.prop('outerHTML') + nmb_link);
results.push(a++);
}
return results;
};
start = function() {
switch (location.hostname) {
case 'h.nimingban.com':
case 'www.kukuku.cc':
addLink(jQuery('a.h-threads-img-a'));
break;
case 'boards.4chan.org':
addLink(jQuery('div.file > a.fileThumb'));
}
};
jQuery(document).ready(function() {
setting();
start();
jQuery('#html_button_setting').click(function() {
if (setting_show === 0) {
jQuery('#html_search').show();
setting_show = 1;
} else {
jQuery('#html_search').hide();
setting_show = 0;
}
});
jQuery('#html_search').change(function() {
search_change(jQuery('#html_search').val());
});
jQuery('#settingsWindowLink').click(function() {
setting();
});
});
})();