searchEngineJump 搜索引擎快捷跳转

方便的在各个搜索引擎之间跳转,增加可视化设置菜单,能更友好的自定义设置,修复百度搜索样式丢失的问题

安装此脚本?
作者推荐脚本

您可能也喜欢网页限制解除(改)

安装此脚本
  1. // ==UserScript==
  2. // @name searchEngineJump 搜索引擎快捷跳转
  3. // @author NLF&锐经(修改) & iqxin(修改)
  4. // @contributor iqxin
  5. // @description 方便的在各个搜索引擎之间跳转,增加可视化设置菜单,能更友好的自定义设置,修复百度搜索样式丢失的问题
  6. // @version 5.26.7
  7. // @created 2011-07-02
  8. // @lastUpdated 2024-12-22
  9.  
  10. // @namespace https://gf.qytechs.cn/zh-CN/scripts/27752-searchenginejump
  11. // @homepage https://github.com/qxinGitHub/searchEngineJump
  12. // @require https://gf.qytechs.cn/scripts/408009-togbk/code/toGBK.js?version=832799
  13. // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAFSElEQVR4nMWXX4hdVxXGf2vfe89kJg61ia0DYzMTMWnoQ0FJtKmtJsFixT8DBSmYtGMLgq0PCqMEKwmxYzSGyUPBB7XRNi0FC6JtwYovgcS0klJD8SHakoExYhLQFkwn9/aeOfv7fDi3SStJ5o4muN4O7L32b33rz94H/s8WS10cvR3yVQaY++wnkESkwDK2sMy1EwXDtzRRziBhu+dGDG48smSA5kUP//wmAFIkrNwiGMOsBzYAQwTzEEeBY8BJO1fYtF+4laGPv/i/Afz1C1sAYwngZiKmsDcDI0DrHUtL4DRwMGAmUnVcCtpHPsrQbS/1DZDe+VFHblKziIjYBjwD3Iu5ARBwBjgJnAkwMAa+z+ZZqXEX8VZg0T784aUDzH3uk0DtVQvlVsMjwGpMB3gauAu8ieB2YDPwxR5gF/gQ+MeoNUFzACI4d+imvgDOp0BVRWo2AW62eRi8wvY/wNtrgGhDL+7a/gIcBLYBu4HrsPdSzr8K/JlcLk2BaCQstSxN2VptuYO93an7WES0UyORGg1Wfu0QKivyQhfb56yhn4B3Ynew1kD1oDTfJF20vi8NYBvjMVubbWHrOdtPhwaAYPVvfs8Hf1u32bJbDtXVbgFvAj4AOgTGzhPhGMdV/wCvbtmAJSyttzRiuWv7CdttAlY/f/iimwdvfQGiAfmtczg/jnOJ8/txtRbnvgAu6FSPtg1AC3wGPAvgWGRYqiSowLwC1Ru4GoFyFPc3ZM8DfGPLB1jZXlhe74sS6AAc+O6vL+tg6LaX2LP/SSA6tkpcYeee36/0D/C7Ve9BwZs97iLMEMDAE5N07z1wSQebvl/y3KkAGDIUsrHpRp8ACeDGw38kZdPMPtrILhvZ1yZ5TZJxvnwuW40GzSSaDa1vJq1oJXVbKZ9qpv5qoO6Cqr5ULB+zfNrygOX7LS+PlCgeu+eimz/1w0yWaTTScIqYTEERcDoiXovFauddAAA22CeRDyKD/Bnkbd32PNgUj09S/GwrUMt+x14hiWVFI1LEVyPidggi4hfOnuv3nr8AEGC5sj1j+4TtAcu7i4HlDwLLqRawMmtmnidn6JYLGIa7C/mbwHeAgYATQexPjVCVxcZd7SUACDCEfRyznXoMr8Sawf4lcDdwI7AKWAdss/0r2dOyr6kFpCn7hiyPRlDY5mM7z10W4F1KFT+/p6ZwDkgT2HuN19Tz3yXWG+NnJ8uR9h0FSStSRAFBwAmbpu3xbP/T9rzkp2zvtt2RzcvfG15EAaC8/8m6FkgmpWdsTyD/COtv9esnj1haZXvEtiXP2d5jc6es+3qHv8/2uO1v2d4hedA2H/n2vxZX4LwS+78E1PcDqprAOPZao9Gxs5PNkc6dXUKnIuI1Z8+lRijLo8AR2+OWqeeBS8n7bE8bd2x4Zc97FwcAaP307vqyiXi7QzBi7OyXGel8GkJEBAFUWUREIXlnL/LCvgBheZ9h2lLHyvxp5rrFAZZiG3e16zliBm3vsD0lu6i5ja0awppWrjrKmeOPjAL/UQP/rf1h11BPJHckT/dkL+vDjeXC0pRy3qGcB22x9oHZKwcAcPTh5UimzrWnexGXlrCFlAvlakq5eiiX3eLtSXnFAABe3j1c/0PgTp1z77NUKmesjHMulKuttq9X/eq+sgAAx35wTZ0OqWNrWqr2KVelqoqcF3DOL1r5dStfHQCoW03K9ApuWrnam/PCnHN+StZDRHSK1jLgCnXBpeymr/8dS+SFbmH7eiu/TkQnNRrkqmL20XVXFwBg7QOzRASSsDJFaxndssPso+uu9tH92b8BowSyPc/iZtEAAAAASUVORK5CYII=
  14. // @license MIT
  15.  
  16. // @match *://**/*
  17. // @exclude *://mega.nz/*
  18.  
  19. // @grant GM_getValue
  20. // @grant GM_setValue
  21. // @grant GM_addStyle
  22. // @grant GM_deleteValue
  23. // @grant GM_setClipboard
  24. // @grant GM_registerMenuCommand
  25. // @grant GM_openInTab
  26. // @grant GM_xmlhttpRequest
  27. // @run-at document-end
  28.  
  29. // ==/UserScript==
  30.  
  31. (function () {
  32. 'use strict';
  33.  
  34. console.log("脚本: 搜索引擎快捷跳转 --- 开始执行 --- 发布者: qxin --- GitHub:https://github.com/qxinGitHub/searchEngineJump ← 问题反馈地址")
  35. function iqxinstart(){
  36. // 根据规则把搜索引擎列表插入到指定网站
  37. var rules = [
  38. // 网页搜索/////////////第一个可以当模板看
  39. {name: "google网页搜索",// 你要加载的网站的名字(方便自己查找)
  40. // 是否启用.
  41. enabled: true,
  42. // 在哪个网站上加载,正则.
  43. url: /^https?:\/\/www\.google(?:\.[A-z]{2,3}){1,2}\/[^?]+\?(?!tbm=)(?:&?q=|(?:[^#](?!&tbm=))+?&q=)(?:.(?!&tbm=))*$|(^https?:\/\/xn--flw351e\.ml\/search\?q=)/,
  44. // 加载哪个类型的列表:
  45. // ['web'|'music'|'video'|'image'|'download'|'shopping'|'translate'|'knowledge'|'sociality']
  46. engineList: 'web',
  47. // 添加一个class, 用来使用目标网站的样式
  48. class: "s6JM6d",
  49. // 若固定到顶栏,是否给一个高度
  50. fixedTop: 52,
  51. // 固定到顶栏, 兼容ac百度用
  52. // fixedTop2:88,
  53. // 给引擎列表的样式
  54. style: '\
  55. z-index: 100;\
  56. margin-top:5px;\
  57. margin-left:-10px;\
  58. ',
  59. // 给引擎列表的样式 (“style_ACBaidu” 可选,是为了兼容 “AC Baidu” 脚本)
  60. style_ACBaidu: '\
  61. text-align: center;\
  62. z-index: 100;\
  63. margin-top:-5px;\
  64. ',
  65. // 插入文档,相关
  66. // target 将引擎跳转工具栏插入到文档的某个元素
  67. // (请使用xpath匹配,比如: '//*[@id="subform_ctrl"]' 或者 css匹配(请加上 'css;' 的前缀),比如: 'css;#subform_ctrl' );
  68. // keyword 使用 xpath 或者 css选中一个form input元素 或者 该项是一个函数,使用返回值
  69. // where 四种:
  70. // 'beforeBegin'(插入到给定元素的前面) ;
  71. // 'afterBegin'(作为给定元素的第一个子元素) ;
  72. // 'beforeEnd' (作为给定元素的最后一个子元素) ;
  73. // 'afterEnd'(插入到给定元素的后面);.
  74. insertIntoDoc: {
  75. target: 'css;.ufC5Cb',
  76. // 若 keyword 使用函数获取
  77. // keyword: function () {
  78. // var input = document.getElementById('lst-ib');
  79. // if (input) return input.value;
  80. // },
  81. keyword: '//textarea[@name="q"]',
  82. where: 'afterBegin',
  83. },
  84. // 修改源网页用来适应跳转栏(可选)
  85. // stylish: 'body.vasq #hdtbMenus.hdtb-td-o{top:100px !important;} #hdtbMenus{top:92px;margin-top:30px;}'
  86. stylish: '#appbar.hdtb-ab-o{height:0px !important;} #hdtbMenus{position:unset}'
  87. },
  88. {name: "google-hash-query",// 不刷新页面显示搜索结果的google
  89. enabled: true,
  90. url: /^https?:\/\/www\.google(?:\.[A-z]{2,3}){1,2}\/[^#]*#(?:&?q=|.+?&q=).+/,
  91. engineList: 'web',
  92. style: '\
  93. margin-left: 142px;\
  94. z-index: 100;\
  95. margin-top:5px;\
  96. ',
  97. style_ACBaidu: '\
  98. text-align: center;\
  99. z-index: 100;\
  100. margin-top:5px;\
  101. ',
  102. insertIntoDoc: {
  103. target: 'css;#appbar',
  104. keyword: function () {
  105. var input = document.getElementById('lst-ib');
  106. if (input) return input.value;
  107. },
  108. where: 'beforeBegin',
  109. },
  110. stylish: 'body.vasq #hdtbMenus.hdtb-td-o{top:100px !important}'
  111. },
  112. {name: "百度网页搜索",
  113. url: /^https?:\/\/www\.baidu\.com\/(?:s|baidu)/,
  114. enabled: true,
  115. engineList: "web",
  116. fixedTop:70,
  117. fixedTop2:88,
  118. // fixedTopTarget: "css;.s_form ",
  119. fixedTopTarget: "css;#wrapper_wrapper",
  120. // fixedTopWhere:"beforeEnd",
  121. fixedTopWhere:"beforeBegin",
  122. style: '\
  123. margin-top:8px;\
  124. margin-bottom: -5px;\
  125. z-index: 101;\
  126. margin-left: 144px;\
  127. ',
  128. style_ACBaidu: '\
  129. margin-top: 8px;\
  130. margin-bottom: -5px;\
  131. z-index: 99;\
  132. text-align: center;\
  133. padding-left:0px !important;\
  134. background: rgba(248,248,248,0.4);\
  135. backdrop-filter: blur(10px);\
  136. ',
  137. insertIntoDoc: {
  138. keyword: 'css;input#kw',
  139. target: 'css;#s_tab',
  140. where: 'afterEnd',
  141. },
  142. stylish:".headBlock,.se_common_hint{display:none !important} #wrapper>.result-molecule{z-index:300 !important} #searchTag{position:unset}"
  143. },
  144. {name: "必应网页搜索",
  145. url: /^https?:\/\/[^.]*\.bing\.com\/search/,
  146. enabled: true,
  147. engineList: "web",
  148. style: '\
  149. padding-left:15px;\
  150. margin-top:6px;\
  151. margin-left: 148px;\
  152. margin-bottom:-10px;\
  153. ',
  154. style_ACBaidu: '\
  155. text-align: center;\
  156. margin-left: -120px;\
  157. margin-right: 0px;\
  158. margin-bottom:-20px;\
  159. ',
  160. insertIntoDoc: {
  161. keyword: 'css;#sb_form_q',
  162. target: 'css;#b_content',
  163. where: 'beforeBegin',
  164. },
  165. },
  166. {name: "DDG",
  167. url: /^https?:\/\/duckduckgo\.com\/*/i,
  168. enabled: true,
  169. engineList: "web",
  170. style: '\
  171. margin-top:5px;\
  172. ',
  173. insertIntoDoc: {
  174. keyword: '//input[@name="q"]',
  175. target: 'css;.results--main',
  176. where: 'beforeBegin',
  177. },
  178. },
  179. {name:"雅虎网页搜索",
  180. url:/^https?:\/\/search\.yahoo\.com\/search/i,
  181. engineList:"web",
  182. enabled:true,
  183. fixedTop:54,
  184. style:"\
  185. margin-left:122px;\
  186. ",
  187. insertIntoDoc:{
  188. keyword:'css;#yschsp',
  189. target:'css;#horizontal-bar',
  190. where:'afterBegin',
  191. },
  192. },
  193. {name:"雅虎日本网页搜索",
  194. url:/^https?:\/\/search\.yahoo\.co\.jp\/search/i,
  195. engineList:"web",
  196. enabled:true,
  197. style:"\
  198. margin-left:0px;\
  199. width:1050px;\
  200. display:flex;\
  201. -webkit-box-orient: vertical;\
  202. -webkit-box-direction: normal;\
  203. margin: auto;\
  204. ",
  205. insertIntoDoc:{
  206. keyword:'//input[@name="p"]',
  207. target:'css;.Header__inner',
  208. where:'afterEnd',
  209. },
  210. },
  211. {name:"台湾雅虎网页搜索",
  212. url:/^https?:\/\/tw\.search\.yahoo\.com\/search/i,
  213. engineList:"web",
  214. enabled:true,
  215. fixedTop:52,
  216. style:"\
  217. margin-left:-10px;\
  218. margin-bottom:10px;\
  219. ",
  220. insertIntoDoc:{
  221. keyword:'css;#yschsp',
  222. target:'css;#results',
  223. where:'afterBegin',
  224. },
  225. },
  226. {name:"searx",
  227. url:/^https?:\/\/searx\.me\/\?q/i,
  228. engineList:"web",
  229. enabled:true,
  230. style:"\
  231. margin-left:-10px;\
  232. margin-bottom:10px;\
  233. ",
  234. insertIntoDoc:{
  235. keyword:'css;#q',
  236. target:'css;#categories',
  237. where:'beforeBegin',
  238. },
  239. },
  240. {name: "搜狗",
  241. url: /^https?:\/\/www\.sogou\.com\/(?:web|s)/,
  242. enabled: true,
  243. engineList: "web",
  244. fixedTop:60,
  245. style: "\
  246. top:-46px;\
  247. z-index:99;\
  248. margin-left:-5px;\
  249. ",
  250. style_ACBaidu: "\
  251. top:-46px;\
  252. z-index:99;\
  253. margin-left:60px;\
  254. padding-left: 0px !important;\
  255. ",
  256. insertIntoDoc: {
  257. keyword: "css;#upquery",
  258. target: "css;#wrapper",
  259. where: "afterBegin",
  260. },
  261. stylish:"#float_uphint{display:none;}",
  262. },
  263. {name:"yandex",
  264. url:/^https?:\/\/yandex\.(?:com|ru)\/search/i,
  265. engineList:"web",
  266. enabled:true,
  267. fixedTop:96,
  268. class:"main__center",
  269. style:"\
  270. padding-left:0px;\
  271. ",
  272. insertIntoDoc:{
  273. keyword:'css;.input__control',
  274. target:'css;.main',
  275. where:'beforeBegin',
  276. },
  277. stylish:".main .main__center{padding-top:0px}"
  278. },
  279. {name: "google网页分类搜索",
  280. enabled: true,
  281. url: /^https?:\/\/www\.google(?:\.[A-z]{2,3}){1,2}\/[^?]+\?(?:tbm=)(?:&?q=|(?:[^#](?!&tbm=))+?&q=)(?:.(?!&tbm=))*$/,
  282. engineList: 'web',
  283. style: '\
  284. margin-left: 142px;\
  285. z-index: 100;\
  286. margin-top:5px;\
  287. ',
  288. insertIntoDoc: {
  289. target: 'css;#appbar',
  290. keyword: '//input[@name="q"]',
  291. where: 'beforeBegin',
  292. },
  293. stylish: 'body.vasq #hdtbMenus.hdtb-td-o{top:100px !important}'
  294. },
  295. {name: "startpage",
  296. enabled: true,
  297. url:/^https?:\/\/(www\.)?startpage\.com\/[a-zA-Z]{2,3}\/search/,
  298. engineList: 'web',
  299. fixedTop:103,
  300. style: '\
  301. z-index: 100;\
  302. ',
  303. insertIntoDoc: {
  304. target: 'css;.layout-web__mainline',
  305. keyword: '//input[@name="query"]',
  306. // where: 'beforeBegin',
  307. where: 'afterBegin',
  308. },
  309. },
  310. {name: "startpage2",
  311. enabled: true,
  312. url:/^https?:\/\/www\.startpage\.com\/do\/asearch/,
  313. engineList: 'web',
  314. fixedTop: 102,
  315. fixedTopColor:"#202c46",
  316. nightMode: true,
  317. style: '\
  318. z-index: 100;\
  319. margin-left: 135px;\
  320. color:#ccc;\
  321. ',
  322. insertIntoDoc: {
  323. target: 'css;.layout-web__header',
  324. keyword: '//input[@name="query"]',
  325. // where: 'beforeBegin',
  326. where: 'beforeEnd',
  327. },
  328. stylish:".layout-web__body{margin-top:110px;}",
  329. },
  330. {name: "infinitynewtab",
  331. enabled: true,
  332. url:/^https?:\/\/google\.infinitynewtab\.com\/\?q/i,
  333. engineList: 'web',
  334. style: '\
  335. z-index: 100;\
  336. margin-top: 20px;\
  337. ',
  338. insertIntoDoc: {
  339. target: 'css;.search-types',
  340. // keyword: 'css;input.gsc-input',
  341. keyword: '//input[@name="search"]',
  342. where: 'afterBegin',
  343. },
  344. },
  345. {name: "ecosia",
  346. enabled: true,
  347. url:/^https?:\/\/www\.ecosia\.org\/search\?/i,
  348. engineList: 'web',
  349. style: '\
  350. margin-left: -10px;\
  351. margin-top: -20px;\
  352. z-index:1;\
  353. background-color:#fff;\
  354. ',
  355. insertIntoDoc: {
  356. target: 'css;.mainline',
  357. keyword: '//input[@name="q"]',
  358. where: 'afterBegin',
  359. },
  360. },
  361. {name: "f搜",
  362. enabled: true,
  363. url: /^https?:\/\/fsoufsou\.com\/search/,
  364. engineList: 'web',
  365. fixedTop: 111,
  366. style: '\
  367. margin-left: 50px;\
  368. z-index: -99999;\
  369. margin-top:5px;\
  370. ',
  371. style_ACBaidu: '\
  372. text-align: center;\
  373. z-index: -99999;\
  374. margin-top:5px;\
  375. ',
  376. insertIntoDoc: {
  377. target: 'css;.input-with-suggestion',
  378. keyword: function () {
  379. var input = document.getElementById('search-input');
  380. if (input) return input.value;
  381. },
  382. where: 'beforeEnd',
  383. },
  384. stylish: '.tabs-bottom-border{transform: translate(0, 32px); !important}'
  385. },
  386. {name: "brave",
  387. enabled: true,
  388. // https://search.brave.com/search?q=0
  389. url:/^https?:\/\/search\.brave\.com\/search\?/i,
  390. engineList: 'web',
  391. class: "container-80",
  392. style: '\
  393. z-index:1;\
  394. ',
  395. insertIntoDoc: {
  396. target: 'css;#search-main',
  397. keyword: '//input[@name="q"]',
  398. where: 'beforeBegin',
  399. },
  400. },
  401. {name: "neeva",
  402. enabled: true,
  403. // https://neeva.com/search?q=0
  404. url:/^https?:\/\/neeva\.com\/search\?/i,
  405. engineList: 'web',
  406. fixedTop: 80,
  407. style: '\
  408. z-index:1;\
  409. ',
  410. insertIntoDoc: {
  411. target: 'css;#search header',
  412. keyword: '//input[@name="q"]',
  413. where: 'afterEnd',
  414. },
  415. },
  416.  
  417. // 知识
  418. {name: "百度百科词条",
  419. url: /^https?:\/\/baike\.baidu\.com\/item/,
  420. engineList: "knowledge",
  421. fixedTop:65,
  422. enabled: true,
  423. style: "\
  424. text-align: center;\
  425. background: #fff;\
  426. ",
  427. insertIntoDoc: {
  428. keyword: 'css;#query',
  429. target: 'css;.navbar-wrapper',
  430. where: 'beforeBegin',
  431. },
  432. },
  433. {name: "百度百科搜索",
  434. url: /^https?:\/\/baike\.baidu\.com\/search/,
  435. engineList: "knowledge",
  436. enabled: true,
  437. fixedTop:56,
  438. style: "\
  439. padding-left: 120px;\
  440. margin: 5px 0 -10px 0px;\
  441. ",
  442. insertIntoDoc: {
  443. keyword: 'css;#query',
  444. target: 'css;.header-wrapper',
  445. where: 'afterEnd',
  446. },
  447. },
  448. {name: "百度文库",
  449. url: /^https?:\/\/wenku\.baidu\.com\/search/i,
  450. engineList: "knowledge",
  451. enabled: true,
  452. fixedTop: 96,
  453. style: "\
  454. margin-bottom: 6px;\
  455. margin-top:-16px;\
  456. padding:0;\
  457. ",
  458. insertIntoDoc: {
  459. keyword: function(){
  460. var str = document.querySelector("#kw").value;
  461. return str;
  462. },
  463. target: 'css;.bd-wrap',
  464. where: 'afterBegin',
  465. },
  466. },
  467. {name: "百度知道",
  468. url: /^https?:\/\/zhidao\.baidu\.com\/search/i,
  469. engineList: "knowledge",
  470. enabled: true,
  471. style: "\
  472. border-top: 1px solid #e5e5e5;\
  473. border-bottom: 1px solid #e5e5e5;\
  474. margin-bottom: 1px;\
  475. margin-left:112px;\
  476. ",
  477. insertIntoDoc: {
  478. keyword: 'css;#kw',
  479. target: 'css;#header',
  480. where: 'afterEnd',
  481. },
  482. },
  483. {name: "维基百科",
  484. url: /^https?:\/\/\D{2,5}\.wikipedia\.org\/wiki/i,
  485. engineList: "knowledge",
  486. enabled: true,
  487. style: "\
  488. position: absolute;\
  489. padding-left: 14em;\
  490. ",
  491. insertIntoDoc: {
  492. keyword: function(){
  493. var url = window.location.href.substring(window.location.href.lastIndexOf("/")+1);
  494. return decodeURIComponent(url);
  495. },
  496. target: 'css;#mw-head',
  497. where: 'afterBegin',
  498. },
  499. },
  500. {name: "知乎",
  501. url: /^https?:\/\/www\.zhihu\.com\/search\?/i,
  502. engineList: "knowledge",
  503. enabled: true,
  504. fixedTop:52,
  505. style: "\
  506. margin: 5px auto 0px;\
  507. width:960px;\
  508. z-index:19;\
  509. background: #fff;\
  510. box-shadow: 0 1px 3px 0 rgba(0,34,77,.05); \
  511. padding: 5px 20px; \
  512. ",
  513. // 兼容“知乎排版优化”
  514. // https://gf.qytechs.cn/zh-CN/scripts/21659
  515. style_ZhihuChenglinz: "\
  516. margin: 5px auto 0px;\
  517. width:654px;\
  518. z-index:19;\
  519. background: #fff;\
  520. box-shadow: 0 1px 3px 0 rgba(0,34,77,.05); \
  521. padding: 5px 20px; \
  522. ",
  523. insertIntoDoc: {
  524. keyword: 'css;.Input',
  525. target:"css;.App-main .SearchTabs",
  526. where: 'afterEnd', //beforeBegin
  527. },
  528. stylish:".TopSearch.Card{margin:30px auto;}",
  529. },
  530. {name: "互动百科搜索页",
  531. url: /^https?:\/\/so\.baike\.com\/doc/i,
  532. engineList: "knowledge",
  533. enabled: true,
  534. style: "\
  535. border-top: 1px solid #e5e5e5;\
  536. text-align: center;\
  537. border-bottom: 1px solid #e5e5e5;\
  538. margin-bottom: 1px;\
  539. ",
  540. insertIntoDoc: {
  541. keyword: 'css;.ac_input',
  542. target: 'css;.bk-head',
  543. where: 'afterEnd',
  544. },
  545. },
  546. {name: "互动百科词条页",
  547. url: /^https?:\/\/www\.baike\.com\/wiki/i,
  548. engineList: "knowledge",
  549. enabled: true,
  550. style: "\
  551. border-top: 1px solid #e5e5e5;\
  552. text-align: center;\
  553. border-bottom: 1px solid #e5e5e5;\
  554. margin-bottom: 1px;\
  555. ",
  556. insertIntoDoc: {
  557. keyword: 'css;.ac_input',
  558. target: 'css;.bk-head',
  559. where: 'afterEnd',
  560. },
  561. },
  562. {name: "豆丁文档",
  563. url: /^https?:\/\/www\.docin\.com\/search\.do/,
  564. engineList: "knowledge",
  565. enabled: true,
  566. style: "\
  567. text-align: center;\
  568. margin:0 auto;\
  569. padding-top:1px;\
  570. border-top:1px solid #00000;\
  571. border-bottom:1px solid #D9E1F7;\
  572. ",
  573. insertIntoDoc: {
  574. keyword: 'css;#topsearch',
  575. target: 'css;.doc_hd_mini',
  576. where: 'afterEnd',
  577. },
  578. },
  579. {name: "知乎(搜狗)",
  580. url: /^https?:\/\/zhihu\.sogou\.com\/zhihu/,
  581. enabled: true,
  582. engineList: 'web',
  583. fixedTop:55,
  584. style: "\
  585. margin: auto;\
  586. width: 1000px;\
  587. z-index:99;\
  588. ",
  589. insertIntoDoc: {
  590. keyword: 'css;#upquery',
  591. target: 'css;#header',
  592. where: 'afterEnd',
  593. },
  594. stylish: '.header{ margin-bottom: 5px; }'
  595. },
  596. {name: "微信搜狗",
  597. url: /^https?:\/\/weixin\.sogou\.com\/weixin\?/,
  598. enabled: true,
  599. engineList: "web",
  600. fixedTop:55,
  601. style: "width: 1000px;margin: 8px auto -5px;z-index:99;",
  602. insertIntoDoc: {
  603. keyword: "//input[@name='query']",
  604. target: "css;.header-box",
  605. where: "afterEnd",
  606. },
  607. },
  608. {name: "Quora",
  609. // https://www.quora.com/search?q=china
  610. url: /^https?:\/\/www\.quora\.com\/search\?/i,
  611. enabled: true,
  612. engineList: "knowledge",
  613. fixedTop:53,
  614. style: "width: 1000px;margin: 0px auto 0px; padding-left:180px;",
  615. insertIntoDoc: {
  616. keyword: function(){
  617. var url = window.location.href.substring(window.location.href.lastIndexOf("=")+1);
  618. return decodeURIComponent(url);
  619. },
  620. target: "css;.SiteHeader",
  621. where: "beforeEnd",
  622. },
  623. },
  624. {name: "stackoverflow",
  625. url: /^https?:\/\/stackoverflow\.com\/search\?/i,
  626. enabled: true,
  627. engineList: "knowledge",
  628. fixedTop:50,
  629. style: "width: 1000px;margin: 8px auto 0px;z-index:99;",
  630. insertIntoDoc: {
  631. keyword: "//input[@name='q']",
  632. target: "css;.top-bar",
  633. where: "afterEnd",
  634. },
  635. },
  636.  
  637.  
  638. // 视频网站
  639. {name: "优酷",
  640. url: /^https?:\/\/www\.soku\.com\/search_video\//,
  641. engineList: "video",
  642. enabled: true,
  643. fixedTop:54,
  644. style: "\
  645. width:1190px;\
  646. margin:0 auto;\
  647. z-index:99999;\
  648. ",
  649. insertIntoDoc: {
  650. keyword: 'css;#headq',
  651. target: 'css;.sk_container',
  652. where: 'beforeBegin',
  653. },
  654. },
  655. {name: "土豆",
  656. url: /^https?:\/\/www\.soku\.com\/t\/nisearch\//,
  657. enabled: true,
  658. engineList: "video",
  659. style: "\
  660. padding-left: 10px;\
  661. border-top: 1px solid #FC6500;\
  662. border-bottom: 1px solid #FC6500;\
  663. text-align: center;\
  664. ",
  665. insertIntoDoc: {
  666. keyword: 'css;#headq',
  667. target: 'css;body > .sk_container',
  668. where: 'beforeBegin',
  669. },
  670. },
  671. {name: "哔哩哔哩",
  672. url: /^https?:\/\/search\.bilibili\.com\/all/,
  673. enabled: true,
  674. engineList: "video",
  675. // fixedTop:62,
  676. style: "\
  677. width:980px;\
  678. margin:10px auto -5px;\
  679. text-align:center;\
  680. ",
  681. insertIntoDoc: {
  682. // keyword: 'css;#search-keyword', //旧
  683. // target: 'css;.filter-wrap', //旧
  684. // keyword: 'css;.search-input-el',
  685. keyword: function(){
  686. if(document.querySelector("#search-keyword")){
  687. return document.querySelector("#search-keyword").value;
  688. } else{
  689. return document.querySelector(".search-input-el").value;
  690. }
  691. },
  692. // target: 'css;.search-input',
  693. target: function(){
  694. if(document.querySelector(".head-contain")){
  695. return document.querySelector(".head-contain");
  696. } else{
  697. return document.querySelector(".search-input");
  698. }
  699. },
  700. where: 'afterEnd',
  701. },
  702. },
  703. {name: "AcFun",
  704. url: /^https?:\/\/www\.acfun\.cn\/search/,
  705. enabled: true,
  706. engineList: "video",
  707. fixedTop:46,
  708. style: "\
  709. width:980px;\
  710. margin: -30px 0 10px 0;\
  711. text-align:center;\
  712. ",
  713. insertIntoDoc: {
  714. keyword: 'css;#search-text--standalone',
  715. target: 'css;.search__main__container',
  716. where: 'afterEnd',
  717. },
  718. },
  719. {name: "YouTube",
  720. url: /^https?:\/\/www\.youtube\.com\/results/,
  721. enabled: true,
  722. engineList: "video",
  723. fixedTop:56,
  724. style: "\
  725. z-index:9;\
  726. margin-top: 62px;\
  727. margin-bottom: -80px;\
  728. text-align: center;\
  729. backgroud:#fff;\
  730. ",
  731. insertIntoDoc: {
  732. keyword: 'css;input#search',
  733. target: 'css;#page-manager',
  734. where: 'beforeBegin',
  735. },
  736. },
  737. {name: "niconico",
  738. url: /^https?:\/\/www\.nicovideo\.jp\/search\//,
  739. enabled: true,
  740. engineList: "video",
  741. style: "\
  742. border-top: 1px solid #E8E8E8;\
  743. border-bottom: 1px solid #E8E8E8;\
  744. text-align: center;\
  745. ",
  746. insertIntoDoc: {
  747. keyword: 'css;#search_united',
  748. target: 'css;.tagListBox',
  749. where: 'beforeBegin',
  750. },
  751. },
  752. {name: "Iqiyi",
  753. url: /^https?:\/\/so\.iqiyi\.com\/so\/q/,
  754. enabled: true,
  755. engineList: "video",
  756. fixedTop:60,
  757. style: '\
  758. margin:0 auto;\
  759. width:1180px;\
  760. ',
  761. insertIntoDoc: {
  762. keyword: 'css;#data-widget-searchword',
  763. target: 'css;.mod_search_header',
  764. where: 'afterEnd'
  765. },
  766. },
  767. {name: "腾讯视频",
  768. url: /^https?:\/\/v\.qq\.com\/x\/search/i,
  769. engineList: "video",
  770. enabled: true,
  771. fixedTop:60,
  772. style: "width:1140px;margin:0 auto;",
  773. insertIntoDoc: {
  774. keyword: 'css;#keywords',
  775. target: 'css;.site_head_simple',
  776. where: 'afterEnd',
  777. },
  778. },
  779. {name: "樱花动漫",
  780. url: /^https?:\/\/www\.imomoe\.ai\/search/,
  781. engineList: "video",
  782. enabled: true,
  783. style: " \
  784. width:1140px;\
  785. margin:-10px auto 10px;,\
  786. ",
  787. insertIntoDoc: {
  788. keyword: '//input[@name="searchword"]',
  789. target: 'css;.head',
  790. where: 'afterEnd',
  791. },
  792. },
  793.  
  794.  
  795. // 音乐
  796. {name: "百度音乐",
  797. url: /^https?:\/\/music\.baidu\.com\/search/,
  798. enabled: true,
  799. engineList: "music",
  800. style: "\
  801. border-top: 0px solid #0064C4;\
  802. margin-bottom: 5px;\
  803. ",
  804. insertIntoDoc: {
  805. keyword: 'css;#ww',
  806. target: 'css;.nav-wrapper',
  807. where: 'beforeBegin',
  808. },
  809. },
  810. {name: "一听音乐",
  811. url: /^https?:\/\/so\.1ting\.com\/all\.do/,
  812. enabled: true,
  813. engineList: "music",
  814. style: "\
  815. text-align: center;\
  816. border-bottom: 1px solid #13B310;\
  817. border-top: 1px solid #13B310;\
  818. ",
  819. insertIntoDoc: {
  820. keyword: 'css;#keyword',
  821. target: 'css;.nav',
  822. where: 'beforeBegin',
  823. },
  824. },
  825. {name: "xiami",
  826. url: /^https?:\/\/www\.xiami\.com\/search/,
  827. enabled: true,
  828. engineList: "music",
  829. style: "\
  830. border-top: 1px solid #93D3FF;\
  831. text-align: center;\
  832. ",
  833. insertIntoDoc: {
  834. keyword: 'css;#search_text',
  835. target: 'css;.search_result',
  836. where: 'beforeBegin',
  837. },
  838. },
  839. {name: 'QQ音乐',
  840. url: /^https?:\/\/s\.music\.qq\.com/i,
  841. enabled: true,
  842. engineList: 'music',
  843. style:"\
  844. border-bottom: 1px solid #2B6DAE;\
  845. border-top: 1px solid #2B6DAE;\
  846. text-align: center;\
  847. ",
  848. insertIntoDoc: {
  849. keyword: 'css;#keyword',
  850. target: 'css;.mod_soso',
  851. where: 'afterEnd',
  852. },
  853. },
  854. {name: '网易云音乐',
  855. url: /^https?:\/\/music\.163\.com\/.*?#\/search/i,
  856. enabled: true,
  857. engineList: 'music',
  858. fixedTop:80,
  859. style:"\
  860. text-align: center;\
  861. padding-top:8px;\
  862. ",
  863. insertIntoDoc: {
  864. keyword: (function(){return decodeURI(document.URL.match(/s=(.+?)(&|$)/)[1]);}),
  865. target: 'css;.m-subnav.m-subnav-up.f-pr.j-tflag',
  866. where: 'afterEnd',
  867. },
  868. },
  869. {name: '音悦台',
  870. url: /^https?:\/\/so\.yinyuetai\.com\/\?keyword/,
  871. enabled: true,
  872. engineList: 'music',
  873. style:"\
  874. border-bottom: 1px solid #2B6DAE;\
  875. border-top: 1px solid #2B6DAE;\
  876. text-align: center;\
  877. ",
  878. insertIntoDoc: {
  879. keyword:function(){
  880. var url = window.location.href.substring(window.location.href.lastIndexOf("=")+1);
  881. return decodeURIComponent(url);
  882. },
  883. target: 'css;.content',
  884. where: 'afterEnd'
  885. },
  886. },
  887.  
  888.  
  889. // 图片
  890. {name: "百度图片",
  891. url: /^https?:\/\/image\.baidu\.com\/search/i,
  892. enabled: true,
  893. engineList: "image",
  894. fixedTop:70, //关闭关联联想的情况下
  895. // fixedTop:135, //
  896. style: '\
  897. margin-left:127px;\
  898. ',
  899. insertIntoDoc: {
  900. keyword: 'css;input#kw',
  901. target: 'css;.s_tab',
  902. where: 'afterEnd',
  903. },
  904. },
  905. {name: "谷歌图片",
  906. url: /^https?:\/\/\w{2,10}\.google(?:\.\D{1,3}){1,2}\/[^?]+\?.*&tbm=isch/i,
  907. enabled: true,
  908. engineList: "image",
  909. fixedTop:52,
  910. style: '\
  911. margin-left:136px;\
  912. padding: 10px 5px 1px 22px;\
  913. ',
  914. insertIntoDoc: {
  915. keyword: 'css;input[name=q]',
  916. // target: 'css;#ucs',
  917. target: 'css;.ndYZfc',
  918. where: 'afterBegin',
  919. // where: 'beforeEnd',
  920. },
  921. },
  922. {name: "必应图片",
  923. url: /^https?:\/\/.*\.bing\.com\/images\/search/i,
  924. enabled: true,
  925. engineList: "image",
  926. style: '\
  927. padding-left:90px;\
  928. margin-top:-6px;\
  929. ',
  930. insertIntoDoc: {
  931. keyword: 'css;#sb_form_q',
  932. target: 'css;#rfPaneIn',
  933. where: 'afterBegin',
  934. },
  935. },
  936. {name: "flickr",
  937. url: /^https?:\/\/www\.flickr\.com\/search\//,
  938. engineList: "image",
  939. enabled: true,
  940. style: '\
  941. z-index:1999;\
  942. width:100%;\
  943. border-top:1px solid #EBF1FF;\
  944. border-bottom:0px solid #EBF1FF;\
  945. ',
  946. insertIntoDoc: {
  947. keyword: function() {
  948. var input = document.getElementById("autosuggest-input");
  949. if (input) {
  950. return input.value;
  951. } else {
  952. var m = location.search.match(/q=([^&]+)/i);
  953. if (m) {
  954. return decodeURIComponent(m[1]);
  955. }
  956. }
  957. },
  958. target: 'css;.using-slender-advanced-panel',
  959. where: 'afterBegin'
  960. },
  961. },
  962. {name: "pixiv",
  963. url: /^http:\/\/www\.pixiv\.net\/search\.php/i,
  964. engineList: "image",
  965. enabled: true,
  966. style: '\
  967. margin: 0 auto;\
  968. text-align: center;\
  969. font-family: 微软雅黑;\
  970. ',
  971. insertIntoDoc: {
  972. keyword: 'css;input[name=word]',
  973. target: 'css;body',
  974. where: 'beforeBegin'
  975. },
  976. },
  977. {name: "花瓣",
  978. url: /^https?:\/\/huaban\.com\/search\/\?/,
  979. engineList: "image",
  980. enabled: true,
  981. style: '\
  982. border-top:1px solid #EBF1FF;\
  983. text-align: center;\
  984. ',
  985. insertIntoDoc: {
  986. keyword: 'css;#query',
  987. target: 'css;#search_switch',
  988. where: 'afterEnd'
  989. },
  990. },
  991. {name: "Pinterest",
  992. url: /^https?:\/\/www\.pinterest\.com\/search\//,
  993. engineList: "image",
  994. enabled: true,
  995. style: '\
  996. text-align: center;\
  997. margin-top:-11px;\
  998. ',
  999. insertIntoDoc: {
  1000. keyword: '//input[@name="q"]',
  1001. target: 'css;.headerContainer',
  1002. where: 'afterEnd'
  1003. },
  1004. },
  1005.  
  1006.  
  1007. // 资源下载
  1008. {
  1009. name: '海盗湾thepiratebay',
  1010. url: /^https?:\/\/thepiratebay\.org\/search/i,
  1011. engineList: 'bittorrent',
  1012. enabled: true,
  1013. style: '\
  1014. text-align: center;\
  1015. z-index: 9999;\
  1016. ',
  1017. insertIntoDoc: {
  1018. keyword: 'css;.inputbox',
  1019. target: 'css;#SearchResults',
  1020. where: 'beforeBegin',
  1021. },
  1022. },
  1023. {
  1024. name: '动漫花园',
  1025. url: /^https?:\/\/share\.dmhy\.org\/topics\/list\?keyword\=/i,
  1026. engineList: 'download',
  1027. enabled: true,
  1028. style: '\
  1029. text-align: center;\
  1030. ',
  1031. insertIntoDoc: {
  1032. keyword: 'css;#keyword',
  1033. target: 'css;.table.clear',
  1034. where: 'beforeBegin',
  1035. },
  1036. },
  1037. {
  1038. name: 'ED2K',
  1039. url: /^https?:\/\/www\.ed2000\.com\/filelist\.asp/i,
  1040. engineList: 'download',
  1041. enabled: true,
  1042. insertIntoDoc: {
  1043. keyword: 'css;.searchtxt',
  1044. target: 'css;.topsearch',
  1045. where: 'afterEnd',
  1046. },
  1047. },
  1048. {name: "人人影视",
  1049. url: /^https?:\/\/www\.zimuzu\.tv\/search\//,
  1050. engineList: "download",
  1051. enabled: true,
  1052. style: '\
  1053. border-bottom: 1px solid #00AFFF;\
  1054. text-align: center;\
  1055. ',
  1056. insertIntoDoc: {
  1057. keyword: '//input[@name="q"]',
  1058. target: 'css;.Header',
  1059. where: 'afterEnd',
  1060. },
  1061. },
  1062. {name: "subHD字幕",
  1063. url: /^https?:\/\/subhd\.com\/search/i,
  1064. engineList: "download",
  1065. enabled: true,
  1066. style: "\
  1067. border-bottom: 0px solid #CAD9EA;\
  1068. border-top: 0px solid #CAD9EA;\
  1069. text-align: center;\
  1070. top: -20px;\
  1071. ",
  1072. insertIntoDoc: {
  1073. keyword: 'css;#sn',
  1074. target: 'css;.navbar.navbar-inverse',
  1075. where: 'afterEnd',
  1076. },
  1077. },
  1078.  
  1079.  
  1080. //翻译词典
  1081. {name: "谷歌翻译",
  1082. url: /^https?:\/\/translate\.google(?:\.\D{1,4}){1,2}/i,
  1083. enabled: true,
  1084. engineList: "translate",
  1085. style: '\
  1086. margin:10px 0px 0px 0px;\
  1087. ',
  1088. insertIntoDoc: {
  1089. keyword: 'css;.D5aOJc ',
  1090. target: 'css;.MOkH4e ',
  1091. where: 'afterBegin',
  1092. },
  1093. },
  1094. {name: "百度翻译",
  1095. url: /^https?:\/\/fanyi\.baidu\.com/i,
  1096. enabled: true,
  1097. engineList: "translate",
  1098. style: '\
  1099. margin: -20px 0 10px 0;\
  1100. ',
  1101. insertIntoDoc: {
  1102. keyword: function(){
  1103. return document.querySelector("#baidu_translate_input").value;
  1104. },
  1105. target: 'css;.inner',
  1106. where: 'afterBegin',
  1107. },
  1108. },
  1109. {name: "必应词典",
  1110. url: /^https?:\/\/.*\.bing\.com\/dict\/search\?q\=/i,
  1111. enabled: true,
  1112. engineList: "translate",
  1113. style: '\
  1114. padding-left:15px;\
  1115. margin-top:6px;\
  1116. margin-left: 148px;\
  1117. ',
  1118. insertIntoDoc: {
  1119. keyword: 'css;#sb_form_q',
  1120. target: 'css;#b_header',
  1121. where: 'beforeEnd',
  1122. },
  1123. },
  1124. {name: "有道翻译",
  1125. url: /^https?:\/\/dict\.youdao\.com\/search/i,
  1126. enabled: true,
  1127. engineList: "translate",
  1128. fixedTop:64,
  1129. style: '\
  1130. padding-left:0px;\
  1131. margin-top:2px;\
  1132. text-align:center;\
  1133. ',
  1134. insertIntoDoc: {
  1135. keyword: 'css;#query',
  1136. target: 'css;.c-topbar-wrapper',
  1137. where: 'beforeEnd',
  1138. },
  1139. },
  1140. {name: "有道翻译2",
  1141. url: /^https?:\/\/dict\.youdao\.com\/w/i,
  1142. enabled: true,
  1143. engineList: "translate",
  1144. fixedTop:64,
  1145. style: '\
  1146. padding-left:0px;\
  1147. margin-top:2px;\
  1148. text-align:center;\
  1149. ',
  1150. insertIntoDoc: {
  1151. keyword: 'css;#query',
  1152. target: 'css;.c-topbar-wrapper',
  1153. where: 'beforeEnd',
  1154. },
  1155. },
  1156. {name: "海词",
  1157. url: /^https?:\/\/dict\.cn\/./,
  1158. enabled: true,
  1159. engineList: "translate",
  1160. style: "\
  1161. z-index : 99;\
  1162. margin : -30px auto 0;\
  1163. position : absolute;\
  1164. width : 100%;\
  1165. text-align : center;\
  1166. ",
  1167. insertIntoDoc: {
  1168. keyword: 'css;#q',
  1169. target: 'css;.top',
  1170. where: 'afterEnd'
  1171. }
  1172. },
  1173. {name: "金山词霸",
  1174. // https://www.iciba.com/word?w=test
  1175. url: /^https?:\/\/www\.iciba\.com\/word/i,
  1176. enabled: true,
  1177. engineList: "translate",
  1178. fixedTop:122,
  1179. style: '\
  1180. z-index : 0;\
  1181. ',
  1182. insertIntoDoc: {
  1183. keyword: '//input[@type="search"]',
  1184. target: 'css;.Search_input__1qgiU',
  1185. where: 'afterEnd',
  1186. },
  1187. },
  1188.  
  1189. // 购物
  1190. {name: "淘宝搜索",
  1191. url: /^https?:\/\/s\.taobao\.com\/search/,
  1192. enabled: true,
  1193. engineList: "shopping",
  1194. style: "\
  1195. margin:0px 0 -10px 170px;\
  1196. text-align: center;\
  1197. z-index: 99;\
  1198. ",
  1199. insertIntoDoc: {
  1200. keyword: function() {
  1201. var input = document.querySelector('#q');
  1202. if (input) {
  1203. return input.value;
  1204. } else {
  1205. var m = location.search.match(/q=([^&]+)/);
  1206. if (m) {
  1207. return decodeURIComponent(m[1]);
  1208. }
  1209. }
  1210. },
  1211. target: 'css;.header-wraper',
  1212. where: 'afterEnd',
  1213. },
  1214. },
  1215. {name: "天猫超市搜索",
  1216. url: /^https?:\/\/list\.tmall\.com\/search_product\.htm.*from=chaoshi/i,
  1217. enabled: true,
  1218. engineList: "shopping",
  1219. fixedTop:37,
  1220. style: "\
  1221. z-index:9999;\
  1222. margin: 2px auto -10px;\
  1223. left:0;\
  1224. right:0;\
  1225. text-align:center;\
  1226. position:absolute;\
  1227. ",
  1228. insertIntoDoc: {
  1229. keyword: 'css;#mq',
  1230. target: 'css;.headerCon',
  1231. where: 'beforeBegin',
  1232. },
  1233. },
  1234. {name: "天猫搜索",
  1235. url: /^https?:\/\/list\.tmall\.com\/search_product\.htm/i,
  1236. enabled: true,
  1237. engineList: "shopping",
  1238. fixedTop:34,
  1239. style: "\
  1240. margin: 10px auto -10px;\
  1241. text-align:center;\
  1242. ",
  1243. insertIntoDoc: {
  1244. keyword: 'css;#mq',
  1245. target: 'css;.headerCon',
  1246. where: 'beforeBegin',
  1247. },
  1248. },
  1249. {name: "京东",
  1250. url: /^https?:\/\/search\.jd\.com\/Search/,
  1251. enabled: true,
  1252. engineList: "shopping",
  1253. style:"\
  1254. text-align:center; \
  1255. margin-top: 5px; \
  1256. margin-bottom: -20px; \
  1257. ",
  1258. insertIntoDoc: {
  1259. keyword: 'css;#key',
  1260. target: 'css;#o-header-2013',
  1261. where: 'afterEnd',
  1262. },
  1263. },
  1264. {name: "苏宁",
  1265. url: /^https?:\/\/search\.suning\.com/i,
  1266. enabled: true,
  1267. engineList: "shopping",
  1268. style: "\
  1269. border-bottom: 1px solid #E5E5E5;\
  1270. border-top: 1px solid #E5E5E5;\
  1271. text-align: center;\
  1272. ",
  1273. insertIntoDoc: {
  1274. keyword: 'css;#searchKeywordsHidden',
  1275. target: 'css;.ng-toolbar',
  1276. where: 'afterEnd',
  1277. },
  1278. },
  1279. {name: "1号店",
  1280. url: /^https?:\/\/search\.yhd\.com\/c0-0\/k/i,
  1281. enabled: true,
  1282. engineList: "shopping",
  1283. style: "\
  1284. border-bottom: 1px solid #E5E5E5;\
  1285. border-top: 1px solid #E5E5E5;\
  1286. text-align: center;\
  1287. ",
  1288. insertIntoDoc: {
  1289. keyword: 'css;#keyword',
  1290. target: 'css;#global_top_bar',
  1291. where: 'afterEnd',
  1292. },
  1293. },
  1294. {name: "什么值得买",
  1295. // http://search.smzdm.com/?c=home&s=%E8%A5%BF%E6%B8%B8%E8%AE%B0
  1296. url: /^https?:\/\/search\.smzdm\.com\/\?/i,
  1297. enabled: true,
  1298. engineList: "shopping",
  1299. fixedTop:40,
  1300. style: "\
  1301. text-align: center;\
  1302. margin: -15px 0 10px 0;\
  1303. ",
  1304. insertIntoDoc: {
  1305. keyword: 'css;#J_search_input',
  1306. target: 'css;.search-inner',
  1307. where: 'afterEnd',
  1308. },
  1309. },
  1310. {name: "亚马逊",
  1311. // https://www.amazon.cn/s?k=%E4%BA%9A%E9%A9%AC%E9%80%8A%E7%BD%91
  1312. url: /^https?:\/\/www\.amazon\.cn\/s\?k/i,
  1313. enabled: true,
  1314. engineList: "shopping",
  1315. style: "\
  1316. margin:2px 0 -10px 0;\
  1317. ",
  1318. insertIntoDoc: {
  1319. keyword: 'css;#twotabsearchtextbox',
  1320. target: 'css;.sg-row',
  1321. where: 'afterBegin',
  1322. },
  1323. },
  1324. {name: "1688",
  1325. // https://s.1688.com/selloffer/offer_search.htm?keywords=%
  1326. url: /^https?:\/\/s\.1688\.com\/selloffer\/offer_search/i,
  1327. enabled: true,
  1328. engineList: "shopping",
  1329. fixedTop:88,
  1330. class:"tab-container",
  1331. style: "\
  1332. margin:-10px auto 5px;\
  1333. ",
  1334. insertIntoDoc: {
  1335. keyword: '//input[@name="keywords"]',
  1336. target: 'css;.header-container',
  1337. where: 'afterEnd',
  1338. },
  1339. },
  1340. {name: "慢慢买",
  1341. // http://ss.manmanbuy.com/Default.aspx?key=%s
  1342. url: /^https?:\/\/ss\.manmanbuy\.com\/Default\.aspx\?key/i,
  1343. enabled: true,
  1344. engineList: "shopping",
  1345. style: "\
  1346. text-align:center;\
  1347. ",
  1348. insertIntoDoc: {
  1349. keyword: '//input[@name="key"]',
  1350. target: 'css;#resultcomment',
  1351. where: 'beforeBegin',
  1352. },
  1353. },
  1354.  
  1355.  
  1356. //社交
  1357. {name: "新浪微博",
  1358. url: /^https?:\/\/s\.weibo\.com\/weibo\//i,
  1359. enabled: true,
  1360. engineList: "sociality",
  1361. fixedTop:48,
  1362. style: "\
  1363. // border-bottom: 1px solid #E5E5E5;\
  1364. // border-top: 1px solid #E5E5E5;\
  1365. // text-align: center;\
  1366. ",
  1367. insertIntoDoc: {
  1368. keyword: 'css;.searchInp_form',
  1369. target: 'css;#pl_common_searchTop',
  1370. where: 'afterEnd',
  1371. },
  1372. },
  1373. {name: "百度贴吧",
  1374. url: /^https?:\/\/tieba\.baidu\.com\/f\/search/i,
  1375. enabled: true,
  1376. engineList: "sociality",
  1377. style: "\
  1378. border-top: 1px solid #e5e5e5;\
  1379. text-align: center;\
  1380. border-bottom: 1px solid #e5e5e5;\
  1381. margin-bottom: 1px;\
  1382. ",
  1383. insertIntoDoc: {
  1384. keyword: 'css;#wd1',
  1385. target: 'css;.s_container.clearfix',
  1386. where: 'beforeBegin',
  1387. },
  1388. },
  1389. {name: "豆瓣1",
  1390. url: /^https?:\/\/(movie|music|book)\.douban\.com\/subject_search?/,
  1391. enabled: true,
  1392. engineList: "sociality",
  1393. style: "\
  1394. border-top: 1px solid #e5e5e5;\
  1395. text-align: center;\
  1396. border-bottom: 1px solid #e5e5e5;\
  1397. margin-bottom: 1px;\
  1398. ",
  1399. insertIntoDoc: {
  1400. keyword: 'css;#inp-query',
  1401. target: 'css;.nav-secondary',
  1402. where: 'afterEnd'
  1403. },
  1404. },
  1405. {name: "豆瓣2",
  1406. url: /^https?:\/\/www\.douban\.com\/search/i,
  1407. enabled: true,
  1408. engineList: "sociality",
  1409. style: "\
  1410. border-top: 1px solid #e5e5e5;\
  1411. text-align: center;\
  1412. border-bottom: 1px solid #e5e5e5;\
  1413. margin-bottom: 1px;\
  1414. ",
  1415. insertIntoDoc: {
  1416. keyword: 'css;#inp',
  1417. target: 'css;#db-global-nav',
  1418. where: 'afterEnd'
  1419. },
  1420. },
  1421.  
  1422.  
  1423. //学术搜索列表
  1424. {name: "百度学术",
  1425. url: /^https?:\/\/xueshu\.baidu\.com\/(?:s|baidu)/,
  1426. enabled: true,
  1427. engineList: "scholar",
  1428. style: '\
  1429. text-align: center;\
  1430. margin:0px;\
  1431. top:0px;\
  1432. z-index:99999;\
  1433. ',
  1434. insertIntoDoc: {
  1435. keyword: 'css;input#kw',
  1436. target: 'css;#head_wr',
  1437. where: 'afterEnd',
  1438. },
  1439. },
  1440. {name: "谷歌学术",
  1441. enabled: true,
  1442. url: /^https?:\/\/scholar\.google(?:\.\D{1,3}){1,2}\/scholar\?/,
  1443. engineList: "scholar",
  1444. style: '\
  1445. z-index:999;\
  1446. position:relative;\
  1447. ',
  1448. insertIntoDoc: {
  1449. target: 'css;#gs_ab',
  1450. keyword: '//input[@name="q"]',
  1451. where: 'beforeBegin'
  1452. }
  1453. },
  1454. {name: "cnki",
  1455. url: /^http:\/\/search\.cnki\.net\/search\.aspx/i,
  1456. enabled: true,
  1457. engineList: "scholar",
  1458. style: '\
  1459. padding-left:15px;\
  1460. border-top:1px solid #D9E1F7;\
  1461. border-bottom:1px solid #D9E1F7;\
  1462. margin-top:-1px;\
  1463. ',
  1464. insertIntoDoc: {
  1465. keyword:'css;#txtSearchKey',
  1466. target:'css;.main',
  1467. where:'afterBegin',
  1468. },
  1469. },
  1470. {name: "知网",
  1471. enabled: true,
  1472. url: /^http:\/\/epub\.cnki\.net\/kns\/brief\/default_result\.aspx/i,
  1473. engineList: "scholar",
  1474. style: '\
  1475. border-bottom:1px solid #E5E5E5;\
  1476. border-top:1px solid #E5E5E5;\
  1477. z-index:999;\
  1478. position:relative;\
  1479. ',
  1480. insertIntoDoc: {
  1481. keyword:'css;#txt_1_value1',
  1482. target:'css;#TopSearchBar',
  1483. where:'afterEnd',
  1484. }
  1485. },
  1486. {name: "万方",
  1487. enabled: true,
  1488. url: /^https?:\/\/s\.g\.wanfangdata\.com\.cn\/Paper\.aspx/i,
  1489. engineList: "scholar",
  1490. style: '\
  1491. border-bottom:1px solid #E5E5E5;\
  1492. border-top:1px solid #E5E5E5;\
  1493. z-index:999;\
  1494. position:relative;\
  1495. ',
  1496. insertIntoDoc: {
  1497. keyword:'css;#queryBox',
  1498. target:'css;#content',
  1499. where:'beforeBegin',
  1500. }
  1501. },
  1502. {name: "EBSCO",
  1503. enabled: true,
  1504. url: /^http:\/\/.*?ebscohost\.com\/.*?results/i,
  1505. engineList: "scholar",
  1506. style: '\
  1507. border-bottom:1px solid #E5E5E5;\
  1508. border-top:1px solid #E5E5E5;\
  1509. position:relative;\
  1510. ',
  1511. insertIntoDoc: {
  1512. keyword:'css;#SearchTerm1',
  1513. target:'css;#findFieldOuter',
  1514. where:'afterend',
  1515. }
  1516. },
  1517. {name: "Springer",
  1518. enabled: true,
  1519. url: /^http:\/\/link\.springer\.com\/search\?query=/i,
  1520. engineList: "scholar",
  1521. style: '\
  1522. border-bottom:1px solid #E5E5E5;\
  1523. border-top:1px solid #E5E5E5;\
  1524. position:relative;\
  1525. ',
  1526. insertIntoDoc: {
  1527. keyword:'css;#query',
  1528. target:'css;#content',
  1529. where:'beforeBegin',
  1530. }
  1531. },
  1532. {name: "JSTOR",
  1533. enabled: true,
  1534. url: /^https?:.*?jstor.org\/action\/doAdvancedSearch/i,
  1535. engineList: "scholar",
  1536. style: '\
  1537. border-bottom:1px solid #E5E5E5;\
  1538. border-top:1px solid #E5E5E5;\
  1539. position:relative;\
  1540. ',
  1541. insertIntoDoc: {
  1542. keyword:'css;#searchBox',
  1543. target:'css;.tabs-search-results',
  1544. where:'beforeBegin',
  1545. }
  1546. },
  1547.  
  1548. //html 列表
  1549. {name: "w3c",
  1550. enabled:true,
  1551. url:/^https?:.*?runoob\.com\//i,
  1552. engineList:"mine",
  1553. style: '\
  1554. border-bottom:1px solid #E5E5E5;\
  1555. border-top:1px solid #E5E5E5;\
  1556. position:relative;\
  1557. text-align:center;\
  1558. ',
  1559. insertIntoDoc: {
  1560. keyword:function(){
  1561. var url = window.location.href.substring(window.location.href.lastIndexOf("=")+1);
  1562. return decodeURIComponent(url);
  1563. },
  1564. target:'css;.navigation',
  1565. where:'afterEnd',
  1566. }
  1567. },
  1568. {
  1569. name: "GitHub",
  1570. enabled:true,
  1571. url:/^https?:\/\/github\.com\/search/,
  1572. engineList:"mine",
  1573. style:'\
  1574. position:relative;\
  1575. text-align:center;\
  1576. ',
  1577. insertIntoDoc: {
  1578. keyword:'//input[@name="q"]',
  1579. target:'css;.Header',
  1580. where:'afterEnd',
  1581. }
  1582. },
  1583. {
  1584. name: "MDN",
  1585. enabled:true,
  1586. url:/^https?:\/\/developer\.mozilla\.org\/.{2,5}\/search/,
  1587. engineList:"mine",
  1588. style:'\
  1589. position:relative;\
  1590. text-align:center;\
  1591. ',
  1592. insertIntoDoc: {
  1593. keyword:function(){
  1594. var url = window.location.href.substring(window.location.href.lastIndexOf("=")+1);
  1595. return decodeURIComponent(url);
  1596. },
  1597. target:'css;.results-search-form',
  1598. where:'afterEnd',
  1599. }
  1600. },
  1601.  
  1602. // 其他补充, 这个脚本将会朝重型方向发展,如果嫌弃代码过多,可自行删减无用代码
  1603. {
  1604. name: "infinitynewtab",
  1605. enabled:true,
  1606. //https://google.infinitynewtab.com/?q=苹果
  1607. url:/^https?:\/\/google\.infinitynewtab\.com\/\?q/,
  1608. engineList:"web",
  1609. style:'\
  1610. text-align:center;\
  1611. position:fixed;\
  1612. z-index:99999;\
  1613. top:0;\
  1614. ',
  1615. insertIntoDoc: {
  1616. target: 'css;.searchbox-results',
  1617. // keyword: '//input[@name="search"]',
  1618. keyword: 'css;input.gsc-input',
  1619. where: 'beforeBegin',
  1620. }
  1621. },
  1622. {
  1623. name: "头条搜索",
  1624. //https://so.toutiao.com/search
  1625. url:/^https?:\/\/so\.toutiao\.com\/search/,
  1626. engineList:"web",
  1627. enabled:true,
  1628. fixedTop:75,
  1629. style:'\
  1630. margin-left:146px;\
  1631. z-index:99999;\
  1632. ',
  1633. insertIntoDoc: {
  1634. target: 'css;.result-content',
  1635. // keyword: '//input[@name="search"]',
  1636. keyword: '//input[@type="search"]',
  1637. where: 'beforeEnd',
  1638. }
  1639. },
  1640. {
  1641. name: "抖音搜索",
  1642. url:/^https?:\/\/www\.douyin\.com\/search/,
  1643. engineList:"web",
  1644. enabled:true,
  1645. fixedTop:128,
  1646. fixedTopColor:"rgb(22 23 34)",
  1647. style:`
  1648. position:fixed;
  1649. z-index:99999;
  1650. margin-right:280px;
  1651. `,
  1652. insertIntoDoc: {
  1653. target: 'css;.FtarROQM',
  1654. // keyword: '//input[@name="search"]',
  1655. keyword: function () {
  1656. var input = document.querySelector('input[type="text"]');
  1657. if (input) return input.value;
  1658. },
  1659. where: 'afterBegin',
  1660. },
  1661. stylish:`.J122YuOM{padding-top:14px}
  1662. body {
  1663. --font-color-qxin:#ccc;
  1664. --background-color-qxin: #161722;
  1665. --background-avtive-color-qxin: #424242;
  1666. --background-active-enable-qxin:#274144;
  1667. --background-active-disable-qxin:#583535;
  1668. --background-hover-color-qxin: #424242;
  1669. --trigger-shown-qxin: #424242 !important;
  1670. --sej-drop-list-background-qxin:rgba(0,0,0,0.7);
  1671. --background-btn-qxin:#292f36;
  1672. --background-setting-qxin: #161722;
  1673. }
  1674. .OZ_3F0lc{
  1675. margin-top:10px;
  1676. }
  1677. `,
  1678. },
  1679. // 用户补充: kidzgy
  1680. // https://gf.qytechs.cn/zh-CN/scripts/27752/discussions/90497
  1681. {
  1682. name: "企查查",
  1683. url: /^https?:\/\/www\.qcc\.com\/(?:web|firm|)/,
  1684. engineList: 'enterprise',
  1685. enabled: true,
  1686. fixedTop:56,
  1687. style: '\
  1688. width:1250px;\
  1689. margin: 0 auto;\
  1690. padding-left: 15px;\
  1691. ',
  1692. insertIntoDoc: {
  1693. keyword: 'css;#searchKey',
  1694. target: 'css;.app-nheader',
  1695. where: 'AfterEnd',
  1696. },
  1697. stylish: ' .bigsearch-nav.fixed > .nav-wrap { position: static !important; }',
  1698. },
  1699. {
  1700. name: "天眼查",
  1701. url: /^https?:\/\/www\.tianyancha\.com\/(?:search|company)/,
  1702. engineList: 'enterprise',
  1703. enabled: true,
  1704. fixedTop:73,
  1705. style: '\
  1706. top:80px;\
  1707. margin: 0 auto;\
  1708. width:1248px;\
  1709. ',
  1710. insertIntoDoc: {
  1711. keyword: 'css;#header-company-search',
  1712. target: 'css;.tyc-header',
  1713. where: 'AfterEnd',
  1714. },
  1715. stylish: '#web-content.mt122{margin-top:90px !important} .search-bar{position:static !important}',
  1716. },
  1717.  
  1718.  
  1719. // 回家没网,用8090端口离线测试使用。
  1720. {
  1721. name:"test",
  1722. enabled:true,
  1723. url:/^https?:\/\/127\.0\.0\.1:8090\/./,
  1724. style:"\
  1725. margin:150px;\
  1726. ",
  1727. insertIntoDoc: {
  1728. keyword:function(){return false},
  1729. target:'css;body',
  1730. where:'beforeEnd',
  1731. }
  1732. }
  1733. ];
  1734. // 有些图标需要重复使用
  1735. var icon ={};
  1736. icon = {
  1737. google:"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3C!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='48px' height='48px' viewBox='0 0 48 48' enable-background='new 0 0 48 48' xml:space='preserve'%3E%3Cpath fill='%23FFC107' d='M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12 c0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24 c0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z'/%3E%3Cpath fill='%23FF3D00' d='M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657 C34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z'/%3E%3Cpath fill='%234CAF50' d='M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36 c-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z'/%3E%3Cpath fill='%231976D2' d='M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571 c0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z'/%3E%3C/svg%3E%0A",
  1738. baidu:"data:image/svg+xml,%3Csvg t='1666880462710' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='36406' width='32' height='32'%3E%3Cpath d='M226.522 536.053c96.993-20.839 83.792-136.761 80.878-162.089-4.758-39.065-50.691-107.346-113.075-101.952-78.499 7.036-89.957 120.445-89.957 120.445C93.748 444.857 129.764 556.857 226.522 536.053zM329.512 737.61c-2.848 8.175-9.18 29.014-3.686 47.173 10.822 40.707 46.168 42.55 46.168 42.55l50.792 0L422.786 703.169 368.41 703.169C343.952 710.473 332.159 729.468 329.512 737.61zM406.537 341.666c53.572 0 96.859-61.646 96.859-137.9 0-76.12-43.287-137.767-96.859-137.767-53.472 0-96.892 61.646-96.892 137.767C309.645 280.019 353.065 341.666 406.537 341.666zM637.241 350.779c71.598 9.281 117.632-67.141 126.777-125.035 9.349-57.827-36.854-125.036-87.544-136.561-50.791-11.659-114.213 69.688-119.976 122.757C549.597 276.803 565.779 341.566 637.241 350.779zM812.666 691.174c0 0-110.761-85.701-175.425-178.305-87.645-136.593-212.177-81.011-253.822-11.558-41.478 69.452-106.106 113.375-115.286 125-9.314 11.458-133.813 78.666-106.173 201.423 27.64 122.69 124.7 120.345 124.7 120.345s71.53 7.036 154.519-11.524c83.021-18.428 154.484 4.59 154.484 4.59s193.919 64.929 246.988-60.072C895.655 756.037 812.666 691.174 812.666 691.174zM480.881 877.253 354.807 877.253c-54.443-10.855-76.12-48.044-78.867-54.343-2.68-6.433-18.125-36.317-9.951-87.109 23.52-76.12 90.627-81.614 90.627-81.614l67.107 0 0-82.485 57.157 0.871L480.88 877.253zM715.674 876.382l-145.07 0c-56.219-14.508-58.866-54.444-58.866-54.444L511.738 661.49l58.866-0.938 0 144.199c3.586 15.345 22.682 18.159 22.682 18.159l59.771 0L653.057 661.49l62.618 0L715.675 876.382zM921.051 448.006c0-27.708-23.018-111.13-108.385-111.13-85.501 0-96.925 78.732-96.925 134.382 0 53.136 4.489 127.313 110.695 124.935C932.677 593.846 921.051 475.881 921.051 448.006z' p-id='36407' fill='%23008bdd'%3E%3C/path%3E%3C/svg%3E",
  1739. bing:'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB5ElEQVQ4jZ2Tv0sbYRyHX5Uzl8bLVNrSToUOHbr0T2gHqf1Baf8AvcUruNcpd5e75BK9H0Q9gptCogZKh6J2kWtDhkpxkmCwOIidijpYECoI5unQNo0QauwHnuUD78PL9/2+on9w0ItrWiSraiSNjER9w8NRTFUjuQvimhaJuKZ9ThaLJHyfGzMz3AxDRC6H7LooQYDi+50JApJhiJBVNVJ8nx7TZKhU4svhIYX1dW4XCsRsm4FstjOOg+K6fwXCMHiysMCfvKhUELp+OcHjcrkleL60hEil/l/wslKhxzAQuk6vaRLPZC5/g9dra5jVKvdnZ5FtG5FKIVkWSjeCB3NzvFpeBuD7yQnvd3YYW13lztQUsm1fLHhUKnE1n6e+v0973mxtIaXTJDKZLoY4Ps71yUneNhqt/uPuLrJlceUiwcP5ea5NTJCt1fh2fNzq321vI6XT/xacNZuUNzdpHBy0Dp41m1Tqde4Vi/RbVucZPG1bpPbU9vZ4triIlE7TZ5qdXyFmWdzyfYobG/w4PQXg69ERYysrKI6D0PXzu9Am+KAEAYrjELNthGEwVC5jVqvcDUOErv/6E45znlwOxfMQ8ujop2QYorguiueRcF16HQeRzSLl8wz87hXXPY/nkZye5icfi28JEi0cegAAAABJRU5ErkJggg==',
  1740. edit:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAACDklEQVR4nJXVzUtUURjH8Y/mSNKkki2iwiApxHQ1q/6C+gusoCB6oxbRRqFNL4sWtRKqhVSLIDe1CqpNiwjKIilKLKKFEr2Z2qI0xxHN0+LOm+PMOPOc1T2H7/f5ncO991BdNer30zmxKrl0xV2zKJjRoy6aqkkvbbdVLPuUq+8+5uGXnVILki7qsxgtNDtrTNLcijHvrdYsft0/wQ8DZgSzeqMUDW4IJceYHcvwCd1ies0KZvWI1TnhIH6574Olgg0E74zmhZ902j304by4Cxp5LPjtQNmjy3XPVK2rgmCBCcGgdVXhdBgUBCMEwVMNVeIvBMFLifKC8vgrndFBlRJUhJcWFMd3ZfGuzFRxwWrdu3KTxQQVhi8lqApfKVhf0d4bc2/OckG9Pkur7r3TEw+1FRO0GxdM2Vc2/HHBgr1If935UTfigbt5+C27MeSo9+m5GJYitlCwWR2G8oQZ/FgWX1aFgnZMG852v5nFR4rhMn+2dDVJYFpKqy0SDksUhF9FsE0bWgyIa9bIanihoEUcDTrSz4ueOVMOLxQkzVkrZcaoNz755rmpcnihYNghm3w26Ys/5cGcIKgRBJDyqCIquj8C1PqKZvHK+qVrJ5bMRwmGterU64pkkZupWO3RjXkzUZj9+jVZMGK6IsEaHTbgjpOSUYZL/pa5m4qPIbtyznpHvJaqGB53O33h4T/3VzLuzDhE6AAAAABJRU5ErkJggg==",
  1741. del:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAADAFBMVEUAAADsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVH///9VVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OUlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///8dej9TAAAAU3RSTlMAAABm7P/sZgAAABPO////zhQAAB/i/////////+IfAAAe4fvk4AAAAAAd/+Q3GxwAFR85FQBjz+LPY+v////r6//////rZM/h4c9jABUdHRUAAP0EcPoAAAEuSURBVHic7ZRnc8IwDIbdEUZHGB0kDsMOMcOMttBBB93Qvcj//y9VjB0Czh13/dz3ixT5OVmSYyMktLK6tm74oYxEMpVGUW1sbm2bM8DMZHP5OWBnd2+/YNnYAWHbKhRL5cocQKjrWFWPuSDmVS3HpUQu1eoNQkiTM9xqd7oHoG6n3cKMNyHcqNfQ4VGPUsr7nh0FbK/PIdw7PkGnZwOZNrqF9AfnF+jyaigLixYp/eH1Dbq9u4eAHyOAHh5HaPz0DCnjANjm5fUNvX98QoGCxyo5Fjmh0K/vH2hzAi0KnqnymMgJrU6gzemQBM+DZpX1/XBYUyAYTTAuZTUg+Aw8Zf+BvwJLR730sPTjXgD0H2YB0BUClXKpGAeE1y+fy2ZMfX12gdOpZMLQAfkE/AL7e5vGZF+dOQAAAABJRU5ErkJggg==",
  1742. web : "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjE1Nzg3MjgxNjcxIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjMyMjMiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48L2RlZnM+PHBhdGggZD0iTTk0OC4wMzIgOTAyLjc4NGwtMjA2Ljk3Ni0yMDYuOTc2Qzc5Ny42OTYgNjI4LjkyOCA4MzIgNTQyLjUyOCA4MzIgNDQ4YzAtMjEyLjA2NC0xNzEuOTM2LTM4NC0zODQtMzg0UzY0IDIzNS45MzYgNjQgNDQ4czE3MS45MzYgMzg0IDM4NCAzODRjOTQuNTI4IDAgMTgwLjkyOC0zNC4zMDQgMjQ3LjgwOC05MC45MTJsMjA2Ljk3NiAyMDYuOTc2YzE0LjAxNiAxNC4wMTYgMzUuNDg4IDE1LjIzMiA0OCAyLjcyQzk2My4yNjQgOTM4LjI3MiA5NjIuMDQ4IDkxNi44IDk0OC4wMzIgOTAyLjc4NHpNNDQ4IDc2OEMyNzEuMjY0IDc2OCAxMjggNjI0LjczNiAxMjggNDQ4UzI3MS4yNjQgMTI4IDQ0OCAxMjhzMzIwIDE0My4yNjQgMzIwIDMyMFM2MjQuNzM2IDc2OCA0NDggNzY4eiIgcC1pZD0iMzIyNCIgZmlsbD0iIzJjMmMyYyI+PC9wYXRoPjwvc3ZnPg==",
  1743. translate: "data:image/svg+xml,%3Csvg t='1666873736035' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='19423' width='32' height='32'%3E%3Cpath d='M863.288889 861.866667c22.755556 0 38.4-24.177778 29.866667-45.511111L743.822222 465.066667c-14.222222-34.133333-64-34.133333-78.222222 0L516.266667 816.355556c-8.533333 21.333333 7.111111 45.511111 29.866666 45.511111 12.8 0 25.6-8.533333 29.866667-19.911111l38.4-96.711112h179.2l38.4 96.711112c5.688889 11.377778 17.066667 19.911111 31.288889 19.911111zM637.155556 686.933333l66.844444-169.244444 66.844444 169.244444h-133.688888zM583.111111 291.555556h85.333333c15.644444 0 28.444444-12.8 28.444445-28.444445s-12.8-28.444444-28.444445-28.444444H440.888889v-44.088889c0-15.644444-12.8-28.444444-28.444445-28.444445s-28.444444 12.8-28.444444 28.444445v44.088889H156.444444c-15.644444 0-28.444444 12.8-28.444444 28.444444s12.8 28.444444 28.444444 28.444445h366.933334c-9.955556 32.711111-22.755556 64-38.4 95.288888-19.911111 38.4-45.511111 72.533333-73.955556 103.822223h-5.688889c-9.955556-11.377778-29.866667-31.288889-51.2-62.577778-8.533333-12.8-17.066667-25.6-24.177777-39.822222-5.688889-9.955556-14.222222-15.644444-25.6-15.644445-21.333333 0-35.555556 22.755556-25.6 42.666667 8.533333 15.644444 17.066667 31.288889 27.022222 45.511111 19.911111 29.866667 38.4 49.777778 52.622222 65.422222l8.533333 8.533334-157.866666 159.288888c-11.377778 11.377778-11.377778 28.444444 0 39.822223 11.377778 11.377778 28.444444 11.377778 39.822222 0l157.866667-157.866667c24.177778 25.6 51.2 52.622222 79.644444 79.644444 14.222222 14.222222 39.822222 8.533333 46.933333-9.955555 4.266667-9.955556 1.422222-22.755556-7.111111-31.288889-28.444444-27.022222-54.044444-54.044444-78.222222-79.644444 34.133333-36.977778 64-78.222222 88.177778-122.311112 19.911111-38.4 35.555556-78.222222 46.933333-120.888888z' p-id='19424'%3E%3C/path%3E%3C/svg%3E",
  1744. knowledge:"data:image/svg+xml,%3Csvg t='1666874259163' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='27975' width='32' height='32'%3E%3Cpath d='M544.32 648a64 64 0 1 1-64-0.64V172.8a128 128 0 0 1-23.936-9.024l-44.928-22.4A128 128 0 0 0 354.496 128H192a64 64 0 0 0-64 64v575.68a64 64 0 0 0 64 64h161.792a128 128 0 0 1 58.176 14.016l71.04 36.224a64 64 0 0 0 58.176 0l71.168-36.288a128 128 0 0 1 58.112-13.952h161.984a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64h-158.208a128 128 0 0 0-55.04 12.416l-50.88 24.256a128 128 0 0 1-24 8.576v474.752zM674.24 64h158.208a128 128 0 0 1 128 128V767.68a128 128 0 0 1-128 128h-161.92a64 64 0 0 0-29.12 7.04l-71.168 36.224a128 128 0 0 1-116.288 0l-71.04-36.224a64 64 0 0 0-29.12-7.04H192a128 128 0 0 1-128-128V192a128 128 0 0 1 128-128h162.496a192 192 0 0 1 85.44 20.032l44.928 22.4a64 64 0 0 0 55.936 0.448l50.944-24.256A192 192 0 0 1 674.24 64z' p-id='27976' fill='%23515151'%3E%3C/path%3E%3C/svg%3E",
  1745. image:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjE1Nzg3NjYzODI4IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjcgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjYxMjciIHdpZHRoPSIxNi4wNDY4NzUiIGhlaWdodD0iMTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik05MzYuOTYgODkuNiA4Ny4wNCA4OS42QzM4LjQgODkuNiAwIDEyOCAwIDE3NC4wOGwwIDY5MS4yYzAgNDguNjQgMzguNCA4Ny4wNCA4Ny4wNCA4Ny4wNGw4NTIuNDggMGM0OC42NCAwIDg3LjA0LTM4LjQgODcuMDQtODcuMDRsMC02OTEuMkMxMDI0IDEyOCA5ODUuNiA4OS42IDkzNi45NiA4OS42ek05NzIuOCA4NjUuMjhjMCAxNy45Mi0xNS4zNiAzNS44NC0zNS44NCAzNS44NEw4Ny4wNCA5MDEuMTJjLTE3LjkyIDAtMzUuODQtMTUuMzYtMzUuODQtMzUuODRMNTEuMiA2NjUuNmwyNjEuMTItMjIwLjE2IDI3My45MiAyNjMuNjhjMTAuMjQgMTAuMjQgMjMuMDQgMTAuMjQgMzMuMjggMGwxMzAuNTYtMTA3LjUyIDIxNS4wNCAyMjAuMTZjMi41NiAyLjU2IDUuMTIgMi41NiA3LjY4IDUuMTJMOTcyLjggODY1LjI4ek05NzIuOCA3NTcuNzZsLTIwMi4yNC0yMDcuMzZjLTEwLjI0LTEwLjI0LTI1LjYtMTAuMjQtMzUuODQtMi41NmwtMTMwLjU2IDEwNy41MkwzMzAuMjQgMzk0LjI0Yy0xMC4yNC0xMC4yNC0yMy4wNC0xMC4yNC0zMy4yOCAwbC0yNDUuNzYgMjA0LjhMNTEuMiAxNzQuMDhjMC0xNy45MiAxNS4zNi0zNS44NCAzNS44NC0zNS44NGw4NTIuNDggMGMxNy45MiAwIDM1Ljg0IDE1LjM2IDM1Ljg0IDM1Ljg0TDk3NS4zNiA3NTcuNzZ6IiBwLWlkPSI2MTI4IiBmaWxsPSIjNTE1MTUxIj48L3BhdGg+PC9zdmc+",
  1746. video:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjE1Nzg4MTIxNzI5IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjE4NzE2IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik00MjkuMDYgNzEzLjI1Yy04LjcxIDAtMTcuNDYtMS45OS0yNS42My02LjAyLTE5LjYzLTkuNzEtMzEuODItMjkuMjctMzEuODItNTEuMDZWMzY2LjgzYzAtMjEuNzkgMTIuMTktNDEuMzUgMzEuODMtNTEuMDYgMTkuMDItOS40IDQxLjI1LTcuNjkgNTguNTIgNC4zN2wyMzIuNyAxNDQuODkgMS4zMSAwLjk5YzE0LjQ3IDEwLjg3IDIyLjc3IDI3LjQ1IDIyLjc3IDQ1LjQ4IDAgMTguMDItOC4zIDM0LjYtMjIuNzcgNDUuNDhsLTEuMzEgMC45OS0yMzIuNyAxNDQuODljLTkuODYgNi44OC0yMS4zNCAxMC4zOS0zMi45IDEwLjM5eiBtMTcuNDYtMzE0Ljg3djIyNi4yM0w2MjguMTkgNTExLjUgNDQ2LjUyIDM5OC4zOHogbTAgMCIgcC1pZD0iMTg3MTciIGZpbGw9IiM1MTUxNTEiPjwvcGF0aD48cGF0aCBkPSJNODc2LjE1IDk2MGgtNzI4LjNDNjYuMzMgOTYwIDAgODk0LjEgMCA4MTMuMTFWMjA5Ljg5QzAgMTI4LjkgNjYuMzMgNjMgMTQ3Ljg1IDYzaDcyOC4yOUM5NTcuNjcgNjMgMTAyNCAxMjguOSAxMDI0IDIwOS44OVY4MTMuMWMwIDgxLTY2LjMzIDE0Ni45LTE0Ny44NSAxNDYuOXogbS03MjguMy04MjIuNTZjLTQwLjIxIDAtNzIuOTMgMzIuNS03Mi45MyA3Mi40NVY4MTMuMWMwIDM5Ljk1IDMyLjcxIDcyLjQ1IDcyLjkzIDcyLjQ1aDcyOC4yOWM0MC4yMSAwIDcyLjkzLTMyLjUgNzIuOTMtNzIuNDVWMjA5Ljg5YzAtMzkuOTUtMzIuNzEtNzIuNDUtNzIuOTMtNzIuNDVIMTQ3Ljg1eiBtMCAwIiBwLWlkPSIxODcxOCIgZmlsbD0iIzUxNTE1MSI+PC9wYXRoPjwvc3ZnPg==",
  1747. music:"data:image/svg+xml,%3Csvg t='1666874005162' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='25026' width='32' height='32'%3E%3Cpath d='M889.374118 268.589176l25.359058-54.573176L481.882353 13.071059v595.004235a173.778824 173.778824 0 0 0-114.326588-43.489882c-96.798118 0-175.525647 78.787765-175.525647 175.525647s78.727529 175.525647 175.525647 175.525647 175.525647-78.787765 175.525647-175.525647c0-3.192471-0.783059-6.204235-0.963765-9.276235V107.399529l347.256471 161.189647z m-521.818353 586.812236c-63.608471 0-115.290353-51.681882-115.290353-115.290353s51.681882-115.290353 115.290353-115.290353 115.290353 51.681882 115.290353 115.290353-51.742118 115.290353-115.290353 115.290353z' p-id='25027'%3E%3C/path%3E%3C/svg%3E",
  1748. shopping:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjE1Nzg4MjcyMTYwIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjIyNjMzIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik03NjAuOTYgNzEyLjk2SDM3Mi40OGMtMzkuNjggMC03NC4yNC0yOC4xNi04NC40OC02OS4xMkwyMDAuMzIgMjcxLjM2SDEyMC45NmMtMTcuOTIgMC0zMi0xNC4wOC0zMi0zMnMxNC4wOC0zMiAzMi0zMmgxMDQuOTZjMTQuNzIgMCAyNy41MiAxMC4yNCAzMS4zNiAyNC45Nmw5My40NCAzOTYuOGMzLjIgMTEuNTIgMTIuMTYgMTkuODQgMjIuNCAxOS44NGgzODcuODRjMTAuMjQgMCAxOS4yLTguMzIgMjIuNC0xOS44NGw1My43Ni0yNTEuNTJINDM2LjQ4Yy0xNy45MiAwLTMyLTE0LjA4LTMyLTMyczE0LjA4LTMyIDMyLTMyaDQzOS42OGM5LjYgMCAxOC41NiA0LjQ4IDI0Ljk2IDEyLjE2IDUuNzYgNy42OCA4LjMyIDE3LjI4IDYuNCAyNi44OGwtNjIuMDggMjkwLjU2djAuNjRjLTEwLjI0IDQwLjMyLTQ0LjggNjkuMTItODQuNDggNjkuMTJ6IiBmaWxsPSIjNTE1MTUxIiBwLWlkPSIyMjYzNCI+PC9wYXRoPjxwYXRoIGQ9Ik00MTcuMjggODIxLjEybS01OC4yNCAwYTU4LjI0IDU4LjI0IDAgMSAwIDExNi40OCAwIDU4LjI0IDU4LjI0IDAgMSAwLTExNi40OCAwWiIgZmlsbD0iIzUxNTE1MSIgcC1pZD0iMjI2MzUiPjwvcGF0aD48cGF0aCBkPSJNNzMwLjg4IDgyMS4xMm0tNTguMjQgMGE1OC4yNCA1OC4yNCAwIDEgMCAxMTYuNDggMCA1OC4yNCA1OC4yNCAwIDEgMC0xMTYuNDggMFoiIGZpbGw9IiM1MTUxNTEiIHAtaWQ9IjIyNjM2Ij48L3BhdGg+PC9zdmc+",
  1749. sociality:"data:image/svg+xml,%3Csvg t='1666874393408' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='29035' width='32' height='32'%3E%3Cpath d='M3.39 303.28v473.73c0 34.13 34.62 61.78 77.28 61.78h154.58v102.98c0 11.39 15.94 22.74 30.18 22.74 0.51 0 0.69 0.03 0.78 0.07 8.27 0.96 20.35-3.81 26.58-8.76l146.35-117.03h362.9c42.67 0 77.3-27.66 77.3-61.79V303.28c0-34.13-34.63-61.79-77.3-61.79H80.68c-42.67 0-77.29 27.66-77.29 61.79z m62.7 28.37c0-22.07 22.41-39.99 50.01-39.99h650.49c27.62 0 50.01 17.91 50.01 39.99v420.03c0 22.08-22.4 39.99-50.01 39.99h-347.5c-2.03 0.89-6.85 5-8.56 6.35L291.27 893.4v-81.72c0-11.05-11.19-20.01-25.03-20.01H116.12c-27.62 0-50.02-17.91-50.02-39.99l-0.01-420.03z m-11.17-7.77' p-id='29036' fill='%23515151'%3E%3C/path%3E%3Cpath d='M935.5 68.61H214.14c-42.66 0-77.29 27.66-77.29 61.79v60.23a91.006 91.006 0 0 1 21.67-2.68h29.86V151c0-22.72 23.07-41.18 51.51-41.18h669.84c28.44 0 51.51 18.45 51.51 41.18v432.54c0 22.65-22.9 41.03-51.19 41.16v41.2h25.42c42.67 0 77.3-27.66 77.3-61.78V130.4c0.02-34.13-34.6-61.79-77.27-61.79z' p-id='29037' fill='%23515151'%3E%3C/path%3E%3Cpath d='M213.15 537.73c0 16.3 8.7 31.37 22.82 39.52a45.605 45.605 0 0 0 45.64 0 45.637 45.637 0 0 0 22.82-39.52c0-16.3-8.69-31.36-22.82-39.52a45.654 45.654 0 0 0-45.64 0 45.625 45.625 0 0 0-22.82 39.52z m0 0M395.74 537.73c0 25.2 20.43 45.64 45.63 45.64 25.21 0 45.64-20.43 45.64-45.64 0-16.3-8.69-31.36-22.81-39.52a45.654 45.654 0 0 0-45.64 0 45.604 45.604 0 0 0-22.82 39.52z m0 0M578.29 537.73c0 16.3 8.69 31.37 22.82 39.52a45.605 45.605 0 0 0 45.64 0 45.637 45.637 0 0 0 22.82-39.52c0-16.3-8.69-31.36-22.82-39.52a45.654 45.654 0 0 0-45.64 0 45.604 45.604 0 0 0-22.82 39.52z m0 0' p-id='29038' fill='%23515151'%3E%3C/path%3E%3C/svg%3E",
  1750. download:"data:image/svg+xml,%3Csvg t='1666873884950' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='21593' width='32' height='32'%3E%3Cpath d='M808.192 246.528a320.16 320.16 0 0 0-592.352 0A238.592 238.592 0 0 0 32 479.936c0 132.352 107.648 240 240 240h91.488a32 32 0 1 0 0-64H272a176.192 176.192 0 0 1-176-176 175.04 175.04 0 0 1 148.48-173.888l19.04-2.976 6.24-18.24C305.248 181.408 402.592 111.936 512 111.936a256 256 0 0 1 242.208 172.896l6.272 18.24 19.04 2.976A175.04 175.04 0 0 1 928 479.936c0 97.024-78.976 176-176 176h-97.28a32 32 0 1 0 0 64h97.28c132.352 0 240-107.648 240-240a238.592 238.592 0 0 0-183.808-233.408z' p-id='21594'%3E%3C/path%3E%3Cpath d='M649.792 789.888L544 876.48V447.936a32 32 0 0 0-64 0V876.48l-106.752-87.424a31.968 31.968 0 1 0-40.544 49.504l159.04 130.24a32 32 0 0 0 40.576 0l158.048-129.44a32 32 0 1 0-40.576-49.472z' p-id='21595'%3E%3C/path%3E%3C/svg%3E",
  1751. scholar:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjE1Nzg4NTI4MjgzIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI3NDIzIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik0xNDEuOTQgNDA3LjY2NmwzNjguNDk1IDE5My4xMSAzNjguNDk0LTE5My4xMS0zNjguNDk0LTE5MS4wNjRMMTQxLjk0IDQwNy42NjZ6IG0zNzYuNzgtMjI3LjMybDQwNy40MzUgMjExLjI1NWMxMi45MjEgNi43IDEyLjk2MSAyNS4xNjggMC4wNyAzMS45MjNMNTE4Ljc5IDYzNy4wNDJhMTggMTggMCAwIDEtMTYuNzEgMEw5NC42NDUgNDIzLjUyNGMtMTIuODkyLTYuNzU1LTEyLjg1Mi0yNS4yMjMgMC4wNy0zMS45MjNsNDA3LjQzNC0yMTEuMjU1YTE4IDE4IDAgMCAxIDE2LjU3MSAweiIgZmlsbD0iIzUxNTE1MSIgcC1pZD0iMjc0MjQiPjwvcGF0aD48cGF0aCBkPSJNNzM4LjQ0MyA0OTYuOTE4YzAtOS45NDEgOC4wNi0xOCAxOC0xOCA5Ljk0MSAwIDE4IDguMDU5IDE4IDE4djI5Ni4yOGExOCAxOCAwIDAgMS0xMC4zNTMgMTYuMjk1TDQ5Ny4yOTggOTM0LjY4MmExOCAxOCAwIDAgMS0xNS43MDEtMC4xOThsLTI1MC4xODMtMTI1LjE5YTE4IDE4IDAgMCAxLTkuOTQ1LTE2LjA5N1Y0ODEuNGMwLTkuOTQyIDguMDYtMTggMTgtMTggOS45NDEgMCAxOCA4LjA1OCAxOCAxOHYzMDAuNjc3bDIzMi40MzUgMTE2LjMwOCAyNDguNTQtMTE2LjYyNFY0OTYuOTE4eiIgZmlsbD0iIzUxNTE1MSIgcC1pZD0iMjc0MjUiPjwvcGF0aD48cGF0aCBkPSJNODY0LjEyIDUxMC45OGMwLTkuOTQyIDguMDU4LTE4IDE4LTE4IDkuOTQgMCAxOCA4LjA1OCAxOCAxOHYyMjkuMDk3YzAgOS45NDEtOC4wNiAxOC0xOCAxOC05Ljk0MiAwLTE4LTguMDU5LTE4LTE4VjUxMC45Nzl6IiBmaWxsPSIjNTE1MTUxIiBwLWlkPSIyNzQyNiI+PC9wYXRoPjwvc3ZnPg==",
  1752. news:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjE1Nzg4NjA5MjMxIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjI4NDc0IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+PC9kZWZzPjxwYXRoIGQ9Ik02NjYuMDg3IDIzOS4yNzdoMTU1LjY2di0zOC45MTNoLTE1NS42NnYzOC45MTN6IG0tNzcuODMtMzguOTEzaC0yMzMuNDl2MjMzLjQ4OGgyMzMuNDlWMjAwLjM2NHogbS0zOC45MTUgMTk0LjU3NGgtMTU1LjY2di0xNTUuNjZoMTU1LjY2djE1NS42NnogbS0xOTQuNTc2IDM4OS4xNWg0NjYuOTgxdi0zOC45MTVIMzU0Ljc2NnYzOC45MTV6TTg4MC4xMTkgNjQuMTZIMjk2LjM5NGMtNDIuOTg0IDAtNzcuODMgMzQuODQ2LTc3LjgzIDc3LjgzdjE5LjQ1OGgtNzcuODNjLTQyLjk4NCAwLTc3LjgyOCAzNC44NDYtNzcuODI4IDc3LjgzdjY0Mi4wOThjMCA0Mi45ODQgMzQuODQ1IDc3LjgzIDc3LjgyOCA3Ny44M0g4ODAuMTJjNDIuOTg2IDAgNzcuODMxLTM0Ljg0NiA3Ny44MzEtNzcuODNWMTQxLjk5Yy0wLjAwMS00Mi45ODQtMzQuODQ2LTc3LjgzLTc3LjgzMi03Ny44M3ogbTM4LjkxNyA4MTcuMjE2YzAgMjEuNDkzLTE3LjQyNCAzOC45MTctMzguOTE3IDM4LjkxN0gxNDAuNzM0Yy0yMS40OTEgMC0zOC45MTUtMTcuNDI0LTM4LjkxNS0zOC45MTdWMjM5LjI3N2MwLTIxLjQ5MSAxNy40MjQtMzguOTEzIDM4LjkxNS0zOC45MTNoNzcuODN2NTgzLjcyNGgzOC45MTVWMTQxLjk5YzAtMjEuNDkzIDE3LjQyMi0zOC45MTUgMzguOTE1LTM4LjkxNUg4ODAuMTJjMjEuNDkzIDAgMzguOTE3IDE3LjQyMiAzOC45MTcgMzguOTE1djczOS4zODZ6IG0tNTY0LjI3LTIxNC4wMzNoNDY2Ljk4MXYtMzguOTE1SDM1NC43NjZ2MzguOTE1eiBtMzExLjMyMS0zMzAuNzc2aDE1NS42NlYyOTcuNjVoLTE1NS42NnYzOC45MTd6IG0wIDk3LjI4NmgxNTUuNjZ2LTM4LjkxNWgtMTU1LjY2djM4LjkxNXpNMzU0Ljc2NiA1NTAuNmg0NjYuOTgxdi0zOC45MTdIMzU0Ljc2NlY1NTAuNnoiIHAtaWQ9IjI4NDc1IiBmaWxsPSIjNTE1MTUxIj48L3BhdGg+PC9zdmc+",
  1753. mine:"data:image/svg+xml,%3Csvg t='1666874111000' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='27179' width='32' height='32'%3E%3Cpath d='M949.888 457.258667c26.069333-29.824 13.866667-67.52-24.789333-76.309334L681.728 325.546667l-127.786667-214.677334c-20.266667-34.069333-59.925333-34.090667-80.213333 0l-127.786667 214.677334-243.370666 55.381333c-38.442667 8.746667-50.858667 46.506667-24.789334 76.309333l164.394667 188.053334-22.613333 248.917333c-3.584 39.466667 28.458667 62.805333 64.896 47.146667l237.781333-102.037334a21.333333 21.333333 0 0 0-16.810667-39.210666L267.626667 902.186667c-6.698667 2.88-6.229333 3.221333-5.568-4.096l24.277333-267.093334-176.426667-201.813333c-4.757333-5.461333-4.906667-5.034667 2.133334-6.634667l261.205333-59.434666 137.152-230.4c3.733333-6.293333 3.136-6.293333 6.869333 0l137.173334 230.4 261.205333 59.434666c7.125333 1.621333 6.954667 1.088 2.133333 6.613334l-176.426666 201.813333 24.256 267.093333a21.333333 21.333333 0 1 0 42.496-3.84l-22.613334-248.917333 164.394667-188.053333z' fill='%233D3D3D' p-id='27180'%3E%3C/path%3E%3C/svg%3E",
  1754. };
  1755.  
  1756. // 搜索引擎列表
  1757. var engineList = {};
  1758.  
  1759. // 网页搜索列表
  1760. engineList.web = [];
  1761.  
  1762. engineList.web[0] = {
  1763. name: '百度',
  1764. url: 'https://www.baidu.com/s?wd=%s&ie=utf-8',
  1765. favicon: icon.baidu,
  1766. };
  1767. // engineList.web[0] 中间的数字表示排序(数字不能重复,否则后面的会覆盖掉前面的),越小数字越靠前,小于0该引擎不会显示在页面上
  1768. engineList.web[1] = {
  1769. // 搜索引擎名称
  1770. name: 'Google',
  1771. // 搜索引擎地址,关键字变量用%s代替
  1772. url: 'https://www.google.com/search?q=%s&ie=utf-8&oe=utf-8',
  1773. // 搜索引擎的站点图标
  1774. // favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACyElEQVQ4jXWT72tTdxTGv4yN+cY/oMFGqQpD7ZjtsAF/oPEXGFhtbUEn4mSTatSJVua0UNNSEG/01UAH0m6dN1hdW5SbrE3sgkr1hb9lRTFW3Upqcy1NzE1yc/Prfvaia7dM+7w853keznM4R4h38aHdbt8gSZJbURSv3++/Jsuyp6GhwWm1Wsvew/8XNptteTAYvMEMiKjquMvlahVCzHpHXFdXV69pWhLAHHtNSm7nbdMhYo170U61kLkZnDZSFMUrhJg9La6qqrLpum4A6FcuM+5YReRTK5HyUiLlViJLSolULiB2eA+mFgdAlmWPEOIDIYT4aHBw8DaA3tODavuESMV8orvqSZ7/Af1XD/HW71HXVKKdbsPUU9OT1NTU1Aq73b4BgPhLJrYtY2zxQuKtxzATWlH+/MvnYJpFtUAgMCDcbvcZAHOkjXSHIH50LYW3iZn2WIRoNBoTiqJ4AfIPq8n1CwrDB4pIPw5kcP6k0+hJ0+hJ8+0vaU5eNdCzk30RCAQGAPL311PwCnjVXGSw+7zOvIMa5UcTVDQl+Ox4Aoc7yfg/QwpZlj0A5pNvML2Cp/d2FhmExgrceZHn0Z952q9nqGhKsONsCiMP2Ww2J5xO534A481V3N1lLL24md/Dd96b2dWdZfF3Gi29xqR5KDQsSkpK5kaj0ZhhFtgVbKOkfTUru7+kK+RjNKkSzyR4FgvRHOzn8+YJVrakefxXHgBJkk4LIYRwuVytAOHUG7b2H8basZr5netY2/sVm737WHZpC3M6VrDk3Aku3Jq8g9HR0TGLxWKdOsaPfT7fbwBaLsWZBx1svPI1i+RNlP28jsquLWz3H8E3cg0AwzAyDofji/+/w+zOzs4LU3mTZprHE8+4q/7BcGJkeg/hcPh1dXV1zYwfWVtbW9fX1+dXVXV8SpTL5fJDQ0NPJElyWyyW0v/y/wbuo60BpWkyAAAAAABJRU5ErkJggg==',
  1775. favicon: icon.google,
  1776. // 弃用;搜索引擎编码(默认utf-8)如果跳转后乱码可以填写 'gbk'
  1777. // 弃用:encoding: 'utf-8',
  1778. // 如果网站使用的gbk编码
  1779. gbk:false,
  1780. // 新标签页打开
  1781. // blank:true,
  1782. // 禁用该搜索, 只在设置中显示该搜索
  1783. // disable:true,
  1784. };
  1785. engineList.web[2] = {
  1786. name: '必应',
  1787. url: 'https://cn.bing.com/search?q=%s',
  1788. favicon: icon.bing,
  1789. };
  1790. engineList.web[3] = {
  1791. name: '360',
  1792. url: 'https://www.so.com/s?ie=utf-8&q=%s',
  1793. favicon: 'data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB60lEQVR4nIWTvWtTURTAf+e+GpPWRFptmigIDhWELo5+DKLCMxZEJfVjEhTqok4O/geik2MdOuhUm4ogpTS6iNQoRV3sIOqQgpiX2NKEprH58B2HvMQEUnO3ezi/3/m4XKHD2fvywrCr1oirbvWPuh9XYs8znfIApPUSmR97KHAbaY8rVIBxx0487iz4ML4tsrrmCAxsVckTpRw7cbQ1ZgCiq2vLDViVSatAb8ZOSMZOiEttCFj0qh2Jzo8l2jqIJOM3BJmowxJ3Tk8/61Q9koxPCnINwHXN/mzsaRrACDzwcl5vBQM49sx1VDcARNxHLSNIqG51b/5vfgAVuV/vm+NtOwAI6sb3rgKVhTqP75+gpvTlK2SswM5ughoa9a9XQdGmYKK0pF9CKZYqi7e6CT5XF+5+63vLlcKP5UZMirODUz1GLgFsL2pQLv4qdoLLc7sPKeYTQEnN1YFR5wmA6DS+8o5wuT6jbmLMwUAsm26Ff8+GT4nhFYBCPnAm19/sAKD0InzY9JBqEspPRd8g+FE5IULIg93NcnmXz+c7aYnMqOqUAeg9m3unRofVe2eEPSJyWZBzDRjVtN+SUP/5Qt4S2efVP9D2aQBKc4PHBO6IyohCVeA9uPf8oytfW/PWk0PhoJ3NdVt81/MXwby4bACYqGIAAAAASUVORK5CYII=',
  1794. // disable:true,
  1795. };
  1796. engineList.web[4] = {
  1797. name: 'yahoo',
  1798. url: 'https://search.yahoo.com/search;?p=%s',
  1799. favicon: "data:image/svg+xml,%3Csvg t='1666872979419' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='13466' width='32' height='32'%3E%3Cpath d='M513.216 69.568C332.224 69.568 161.216 45.76 0 0v1024c161.408-45.824 332.416-69.632 513.216-69.632 178.816 0 349.376 23.232 510.784 69.632V0c-161.408 46.4-331.776 69.568-510.784 69.568z m283.584 87.424l-6.208 9.792c-5.824 9.216-11.008 17.024-18.176 28.032-9.6 14.4-27.584 43.008-49.216 79.808-6.016 10.176-13.376 22.4-20.992 35.584l-44.032 74.368-16.384 28.608-43.392 75.584c-14.592 25.792-28.992 51.2-43.392 76.416v25.408c0 35.2 0.768 73.6 1.984 107.776 0.576 15.616 1.216 43.392 1.984 72.768 0.768 35.008 1.6 71.232 2.624 89.6l0.192 5.632v0.576l-6.016-1.6-6.976-1.792a197.952 197.952 0 0 0-22.592-3.584 172.224 172.224 0 0 0-28.416 0 195.712 195.712 0 0 0-29.568 5.376l-6.016 1.6v-0.576l0.192-5.632c0.832-18.176 1.792-54.592 2.624-89.6 0.576-29.376 1.408-57.216 1.984-72.768a2721.92 2721.92 0 0 0 1.984-107.776v-25.408L425.6 488.768c-14.208-25.024-28.992-50.624-43.2-75.584-5.632-9.6-11.008-19.2-16.384-28.608-12.8-22.208-29.376-49.984-44.032-74.368a2038.784 2038.784 0 0 1-20.992-35.584 1986.112 1986.112 0 0 0-49.216-79.808c-7.168-11.008-12.416-18.816-18.176-28.032l-6.208-9.792 11.2 3.2c14.208 4.032 28.8 6.016 44.416 6.016s30.592-1.984 44.608-6.016l3.392-1.024 1.792 3.008c27.584 49.792 101.824 171.776 146.176 244.8 15.168 25.216 27.392 44.992 33.408 55.168v-0.192 0.192l33.408-55.168c44.416-72.832 118.592-194.816 146.176-244.8l1.792-3.008 3.392 1.024c14.016 4.032 28.992 6.016 44.608 6.016s30.208-1.984 44.416-6.016l10.624-3.2z' p-id='13467' fill='%234C07A2'%3E%3C/path%3E%3C/svg%3E",
  1800. disable:true,
  1801. };
  1802. engineList.web[5] = {
  1803. name: '搜狗',
  1804. url: 'https://www.sogou.com/web?query=%s',
  1805. favicon: "data:image/svg+xml,%3Csvg t='1666872860655' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='11496' width='32' height='32'%3E%3Cpath d='M716.8 0c169.664 0 307.2 137.536 307.2 307.2v409.6c0 169.664-137.536 307.2-307.2 307.2H307.2C137.536 1024 0 886.464 0 716.8V307.2C0 137.536 137.536 0 307.2 0h409.6z m91.904 305.536c-18.304-22.016-176.1792-92.8384-333.8496-87.6672-157.6704 5.1712-277.568 84.3904-277.568 155.6864 0 71.3088 22.5408 161.3824 277.568 192.5632 221.4912 30.336 114.3424 113.8944 0 113.8944s-180.0832-41.1776-228.8256-41.1776c-48.7424 0-81.856 42.3808-21.2224 96.5888 55.36 49.4976 158.6304 62.1056 252.8512 69.568C571.8784 812.4544 832 794.88 832 638.8352c0-152.9088-205.8624-196.3776-294.5024-206.0416-88.6272-9.6768-131.1232-44.0064-131.1232-59.2384 0-15.5264 37.5552-54.0544 123.2512-44.096 85.696 9.9584 182.6304 44.096 221.696 44.096 39.0784 0 75.6992-46.0032 57.3824-68.0192z' fill='%23FF7D2A' p-id='11497'%3E%3C/path%3E%3C/svg%3E",
  1806. disable:true,
  1807. };
  1808. engineList.web[6] = {
  1809. name: 'Startpage',
  1810. url: 'https://www.startpage.com/do/asearch$post$query',
  1811. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAA9ElEQVR4nO2WTUoDQRBGX5txIMRs/EFBAm49iEfxBN5J8AAeZwwkgmTR6e6ZHsNMDO2iFkEyibqQcVG1+aq74KvXteky9w8p0WMc9dlcARRAARRAARTgXwBk+z5jYyA/3p7zvDv/Ltp2N2/XoilBNj4Rw6sLuDyXwuRa9OxUdDz6ajoc/hwAYLUSrertnV2KmpT6XUiyvzBtGplxjPLksooA+FAB4HzZDdA0a2Ksmb2+4XzJYmFxPlBM51jr8aHCLgPOBQDqd5ntx2ZzECgbDPbWzOPTcyqmM5wvKV7mOw26zA8Z/jbMze2dLqUKoAAKoAC9xic+GmK9S0OJvAAAAABJRU5ErkJggg==',
  1812. disable:true,
  1813. };
  1814. engineList.web[7] = {
  1815. name: 'Yandex',
  1816. url: 'https://yandex.com/search/?text=%s',
  1817. favicon: "data:image/svg+xml,%3Csvg t='1666872628734' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='10516' width='200' height='200'%3E%3Cpath d='M451 1024V691.8L229 96h111.6l163.6 459.4L692.4 0h102.6L553.6 695.6V1024h-102.6z' p-id='10517' fill='%23FC401D'%3E%3C/path%3E%3C/svg%3E",
  1818. };
  1819. engineList.web[8] = {
  1820. name: 'DDG',
  1821. url: 'https://duckduckgo.com/?q=%s',
  1822. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADiElEQVQ4jXWTfVDTBRjHn+uyi8KAbWz7/TbeNzeUeNkLCljGS3hrspDUsC7vqivz5cI/OtQ7vSxNrpvdkQx0k10M5FYgztECgfOoM7kurs6IFx1ja7xsgMiLAySDffvDtLrs8/fz+T7PH8+X6BFIQymxOGb1WyWy8COH13LL9svCSgtEoTt4RMyj5h/CIRKfSImsMKu4NrOKZ6vZwDafz2Tbajaw9ur1wibzemHj+7Lwo0S06j9yYtgqRX0m216lFDS0FCR3Obcl3/FvFmJCFwt/0Rr0aOPGrVlsuymduVShEljDiCL+3hxCUbWZTLtBwfuqXyeZCThqsTTUj0BrPUZ2psGTE4mxQilmt8twLT/WVaUSXvgsjW8hoseJiOhYUuTpSqWw8YYmPjC6JQ5TtXqsLAYAAMu3fLj9eSk8eQw8OimmXpGjMzfWaU5nv94RvfodkoQ+se6cmm2+tDGqe1Ijxm+HXsd4IIi5+WUAQBDA6MRdePdq4c4Xw12wBlNFifginW0tTxN8Sa9Gh+02qlh7v0ayOJTNh8d4Ev7AMq4P+BAM3g/4rm8KvdVn4H6exWCOHMMaOTqzY1wGJXORDkg5H1ermZYRnQyubCEG9R/Av7CCsnOd+P3eCgCg68YCbnZ0YGyXCLf0AowfjML1PMm8UcHaqVTOO1WjFnWMFMjgyhWjZ48OC3/cPx9YRnD6POArAoZSsfT9k7jTEIHR/THoyZXerVYzLfReQvjRs0qRw7NFBmd+HH4pTMXk6Mhf/jTg4WDGRBjex4f33Th43ojHoEaG7nzJXKWSsdHLwmd2VSmE9h9flMwNaqT4NSca3mudeMCs4xDGj4fgdiUfc1YOJssF8OpkcGTF9FUomIvEIRIb0li7RSX+dqxAjt6NAgxYDA8Dpq116E+JhHdzPJxaKfpyZBjWymFQsPZPkvgWIiLancA9Up7C2K5sivd6XxCh98MS+JYmMDzvxqJ7AN2FctSVKtC9dS18LyWiXh3dZVKK257jPaV98IxPn0oWNpYlCera1cxN/55itLpt2H45A3uvbMObjiy89pMWP7ydioZk0dXyFNZWIuGW/asLoUR8fZLQenod325MlzsuXLVMHnMeRIXrLC67G4OHP8roPZ4hajI9y7YdSOB9+n+FfKw4KmLfSUlEbdPOvJ9dJv3sUnMTZmqM9yypsd+ckHLNm7ghW/8p/Alp3+8i87OHIgAAAABJRU5ErkJggg==',
  1823. disable:true,
  1824. };
  1825.  
  1826.  
  1827. // 视频搜索列表
  1828. engineList.video = [];
  1829.  
  1830. engineList.video[0] = {
  1831. name: 'bilibili',
  1832. url: 'http://search.bilibili.com/all?keyword=%s',
  1833. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAwElEQVQ4ja2Syw2DQAxEhwvdIHEklENFUIIN5EAftGAjigA6cA58krBZaZMwki+7nqfR7gC7zCLQUKDRBD41moCGAmaRe9mOKUgMrAsayVyzZGBdQGJox9QFmEVgbT9CXs2k9/cEncUgKcEyrQsBs+6W6CwGSMpgozslQDKDxFBr7n28s2rNN8CMg/atDt8ZwNqDtXcM53MvwJfIu3d5glBdCZi3ht2Czfs3skwAa/VzkVirZ5WPJEEzg7Vaq/ynHh0yOLrBLqn3AAAAAElFTkSuQmCC',
  1834. };
  1835. engineList.video[1] = {
  1836. name: 'YouTube',
  1837. url: 'https://www.youtube.com/results?search_query=%s',
  1838. favicon: "data:image/svg+xml,%3Csvg t='1666872437167' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='8429' width='32' height='32'%3E%3Cpath d='M426.666667 682.666667V384l256 149.845333L426.666667 682.666667z m587.093333-355.541334s-10.026667-71.04-40.704-102.357333c-38.954667-41.088-82.602667-41.258667-102.613333-43.648C727.168 170.666667 512.213333 170.666667 512.213333 170.666667h-0.426666s-214.954667 0-358.229334 10.453333c-20.053333 2.389333-63.658667 2.56-102.656 43.648-30.677333 31.317333-40.661333 102.4-40.661333 102.4S0 410.538667 0 493.952v78.293333c0 83.456 10.24 166.912 10.24 166.912s9.984 71.04 40.661333 102.357334c38.997333 41.088 90.154667 39.765333 112.938667 44.074666C245.76 893.568 512 896 512 896s215.168-0.341333 358.442667-10.752c20.053333-2.432 63.658667-2.602667 102.613333-43.690667 30.72-31.317333 40.704-102.4 40.704-102.4s10.24-83.413333 10.24-166.869333v-78.250667c0-83.456-10.24-166.912-10.24-166.912z' fill='%23FF0000' p-id='8430'%3E%3C/path%3E%3C/svg%3E",
  1839. };
  1840. engineList.video[2] = {
  1841. name: '抖音搜索',
  1842. url: 'https://www.douyin.com/search/%s',
  1843. favicon: "data:image/svg+xml,%3Csvg t='1666873215809' class='icon' viewBox='0 0 1029 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='17442' width='32' height='32'%3E%3Cpath d='M259.3792 385.3312m-170.5984 0a170.5984 170.5984 0 1 0 341.1968 0 170.5984 170.5984 0 1 0-341.1968 0Z' fill='%2303F9AD' p-id='17443'%3E%3C/path%3E%3Cpath d='M403.968 568.4224m-170.5984 0a170.5984 170.5984 0 1 0 341.1968 0 170.5984 170.5984 0 1 0-341.1968 0Z' fill='%23F9F90B' p-id='17444'%3E%3C/path%3E%3Cpath d='M631.3984 622.2848m-88.6784 0a88.6784 88.6784 0 1 0 177.3568 0 88.6784 88.6784 0 1 0-177.3568 0Z' fill='%230FF420' p-id='17445'%3E%3C/path%3E%3Cpath d='M753.0496 565.248m-88.6784 0a88.6784 88.6784 0 1 0 177.3568 0 88.6784 88.6784 0 1 0-177.3568 0Z' fill='%23DA0DF7' p-id='17446'%3E%3C/path%3E%3Cpath d='M594.0224 369.3568m-223.0272 0a223.0272 223.0272 0 1 0 446.0544 0 223.0272 223.0272 0 1 0-446.0544 0Z' fill='%23FF0000' p-id='17447'%3E%3C/path%3E%3Cpath d='M901.12 1024h-778.24c-67.584 0-122.88-55.296-122.88-122.88V122.88c0-67.584 55.296-122.88 122.88-122.88h778.24c67.584 0 122.88 55.296 122.88 122.88v778.24c0 67.584-55.296 122.88-122.88 122.88z' fill='%23070103' p-id='17448'%3E%3C/path%3E%3Cpath d='M829.44 268.0832c-89.7024-0.1024-162.304-72.8064-162.304-162.4064 0-1.024 0.1024-2.048 0.1024-3.072h-72.4992v-19.456c-0.7168 7.3728-1.1264 14.9504-1.1264 22.528s0.4096 15.0528 1.1264 22.528v576.7168h-1.7408c0 89.7024-72.704 162.4064-162.4064 162.4064s-162.4064-72.704-162.4064-162.4064 72.704-162.4064 162.4064-162.4064c36.7616 0 70.5536 12.1856 97.792 32.768v-85.0944a234.496 234.496 0 0 0-97.792-21.1968c-130.3552 0-235.9296 105.6768-235.9296 235.9296 0 130.3552 105.6768 235.9296 235.9296 235.9296s235.9296-105.6768 235.9296-235.9296c0-0.7168 0-1.4336-0.1024-2.1504h0.1024V276.1728a235.4176 235.4176 0 0 0 162.9184 65.536v-73.6256z' fill='%23FFFFFF' p-id='17449'%3E%3C/path%3E%3C/svg%3E",
  1844. };
  1845. engineList.video[3] = {
  1846. name: '优酷',
  1847. url: "http://www.soku.com/search_video/q_%s",
  1848. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABnElEQVQ4jZ2Sv2vCUBDHv4OFYEAeRrFihjeYLl3eILRDhkcXKQg6tWAHs4W6WBAq2CWCFLe4CS7ZOhWyuHTK4uDmpKtD/4As3dOhOYk/SrGBg3fc+37u7vsCAOztPud/DXhEseoUN7cX6Qbi7/Yi3Vh1ihuqT+pZDwADAIyqzE2KKWatfEDiY/W5XVgCAGatfEBdm0K1mkK1+pI5NAF1jgWsKVSLIE2hWr92GFWZCwCUJ1ea24Xl14BHfckcAIDJFTmpZz0qUJhckX8CyINRlbnnDDw5kckVmVzB5Ip8vMo87ayw/wIUnz093AceMxkAWF8yh8z87Onh233Ov8yfCbpgckVSo7ldWMa7s1h+zjV77Gfunl0SKNcNS+t6AUqGUG8enuhMdc0e+5o99gEAqXJF6tN1pE/XEYkpz9Tajtb1AjoTgOqpckXuAJLiorsIUTLESYB9MQD8C5B/eV+SSScBNHvs70MIwFpD78CzkiEOTGStoZcEZmptZ5t3vaDoLkJ9uo4Krx+bn3lKhtjuTT9GDImfliWhW3Hs0Tdk6pGCP1WKswAAAABJRU5ErkJggg==',
  1849. };
  1850. engineList.video[4] = {
  1851. name: '腾讯视频',
  1852. url: 'https://v.qq.com/x/search/?q=%s',
  1853. favicon: 'data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACNUlEQVR4nK2SS0iUYRSGn/P/42UcLCXDIoykaKhlSVCbGlu1MkgSJKE20saoyG2Q7QNpF0RIi6goXKQkLoIQhjBCNBAddFLGWw0q3ua/nxa/82eF0KID3+K7vC/Peb8DO+pKWi80p9W5mtbH/GPJzs3loUAFkOKp6GylbSR7UmLtZmDoAI06gE4P78+2nj7FvorPuB64HnieHF41tdD00c/sSqDvREHpPXF2zj24eAgRBBida2d4phORkCiEMu73peTh7wZvRQGeNJzbiu/JVYSC0EQERnIdfJm9HRmpqDN40SxHQp2BDTjgyHLcsn2aEkNcivfjOAa2E3Cytpu2M/WUmrPYruI6lKbe+0GqX4+GBM8MRaA7VYsI3Kqbj/BWvEle5htDIoGJpTbS2a5tOiHmm/UGFmBBwfax7AAliAyqY8e5eSBHmVeHZfkcqerBdn0sByxH2fDd0Rh2mJBl+wjClreKIWa4MBlf72Vxc4piNpZtIGj41aJPY1gCohTsAAE2/B+YlLDsZHk+3RKFZ3s1vB4ZRUTDFmAqc6PsTgw7jHtzrdqPlefNnonrLBbGoz5F4EPmBQtrKRDdNtQ3ufZ4M0AMJ+x374qxtVITVH5b/RoJx+Y7GVsozsI2NpLMd8QniznFsJnAkGTD0rLftzdARPg084ip/DUoCgFBX63fS7T8NYkAerdkMBuv+p5MZFqVkl8X4W3WtRLHeCDBn+LoSVRdGx4iZjggOqR+4vxuwv9WPwHg2/J5NFR2OgAAAABJRU5ErkJggg==',
  1854. };
  1855. engineList.video[5] = {
  1856. name: 'AcFun',
  1857. url: 'https://www.acfun.cn/search/?type=complex&keyword=%s',
  1858. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADfElEQVQ4jX3MbUzUdQDA8b/1xrW1tlhrtmatF1qrVk5opajLUScgJtoIxXjQ1iobqzaV1MCWqZm2EumO8+C4Bw4OMsC8EGgeWkqi8vy/P8cBJ8cdTwccj/6u+4/79qLVy77b9+1Hcvb4Q2/oukS6SRZZ5YrItLpEpkUW71pkkVgRFO+b/xTZpjaRYXGLTKtLZJUrYpdZFhpdl6htHwpJSSVukkr7SDV5iNcqpJR5eK9S5hW74LjRyrcXCkmyTbKn0kuKsY94rUKa1cN2k4fXi3uRMiwusblYIafKS0FjgG0lCqvLwphs5/EVPk+sXZD9k4/kkl52mvspaAqwUddLvE4hy6IIKUHbKfKbAtwcmqfZO4dveoHnKiDb1EqbLpkXqyOsqoY1himGphZpH7mPdyrMSecIa87cEdLnlwbFF40BfmyZoEYOsQgMd15G+9UOFMMWhg3x1J3YSGdLHTfno/zcOcW/7atQhLTV0C2OXvHjUGbIKXcTBGZvFcEhCbX4SdA+AoclFp2HqFqE75tH/wMK6geFlGNTRFiNAnDs+hK3w9B2PgH13EOM6V5iTL+WvwofpjV/BUEV6obg+G/D2LtCHKsfFNIHdrcgusTcEuT5obPmBDN5EsEfnmBK/zKh4hcY18cy+tkDdBW9ybAKehe4/CEO/zIgpCyrIpx+ldnQGO1nXgXdMqKODSg6DSHtM8yeXo773AbUoBuqH6PxwxWw4CcgIMvqEtLRSx5xbQFqzPlwRCJ33TLWxq3nXscNVG0Mc2cfJSg3kLb3INt3ZhAtkGg8GYdjHs5e9QqpWRkXWj8cOfA23F3Jyth9SMtXoQYHWGo+yMwtI0QmiXn8aR6MWQfBWvK+/Jhv2iPc9k4KKc3YLVYXBflE7wChsL+ogafW5xIdbSI67UUdkWHOyabsU8Tt/RrCPnIvh3j2Ow/bDN1C2m2WRYK+l7fq70OfA3QfEf69HGabQa6CHjtMXyVyx86S9gD06Pm0IcBrF3ykl8n/AFvN99hT42f8j2oi1aeIdNcy0X+N8dZaxlouMqE4CSu/ol48zex1C/sdwySU+cgwuYSUWOom1eRmt9XDFtsomivzaCrHSDQMkGwLkGIbJbF0EI0tQGLDPBr7OO+YPaSX95OgdyPV3h0KbSrsEOkmWewwKiL1/y51iVSjItJNsthc1CFMN7yhvwH03PqrfJ8h8gAAAABJRU5ErkJggg==',
  1859. };
  1860. engineList.video[6] = {
  1861. name: '搜狐',
  1862. url: 'http://so.tv.sohu.com/mts?wd=%s',
  1863. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACk0lEQVQ4jW2SXUhTYRjHf2furH1vns0tc+p01YbSaRRGFGmElRWhRVR0VzeBCUkRKRQUURFBUYtMsAsvwqSLboqKii76oOjLLsKwLBLOjsM+iBEiEk8XOtCDD7zwwvv//57/+7wvWEpX1WUXqud33U1XPn+2cuHgm4bk9xeNqc+Xl1f0eiFi1c8s+wHNd6gzWpxZ7XXtrHBQMx/itR413RYPdbysXzQ80qxPnFkay8zp3jXP1V7ncPS74BbQD6ywavbGQm25lrTcXJN4OOtgS5G6L4oyDogNRYDfpdCUBN0KaYp4t+da0nJcX3AeAB+EU9gmAFGnzH8B2xlcmTElJBk8N6yQW8vjT7Lblv7zQZj1FHUVzNOAdoBruHsNRRMzlJCPkUVja7E3FQBxB6nRzbqc0MsuosKwfdpcBJOAE+Aq7l4DTQybJmY0KWagUnpw3wb8AN8aUuMvG2uGscFPUMSOIgrkC10yBQCaGASksL+Cqw/gQ13C/LKhJo8Xfi7DLo6p+JOAfVaCGesxvo/VsBhgKJ3IDzWk/rAV9XMvPtmPUw7gEmC3FfCV4EQrjo5CuhgsNPWEPK2rHqQFNWOiyQBBGUOTbjw5gIu4rxtocg//W+sPvBMKvzKXJKSzouQsXoiMEJzMKSEx0OQXmjzA/zoJej32DdYnvGLz9GVLy2SktmoSCALQifOsYQtL1rlg+r5B+UQwfw53dzOOPZso2nEC16UBAjljXolkY+VysCR4bBa5B/dtMxCX0Qpdst6YGPinp188a5BZX1S6wlq/NRkAR3Ce+l6amvixrlnGVm2U0bIayXrLxVAjYqDJsFI83urwdMxpnlH+o3bv6UclVR8GwlXmO2fUvE/g/WGcJwG3VfwfeW39pYdUeeAAAAAASUVORK5CYII=',
  1864. blank:true,
  1865. };
  1866. engineList.video[7] = {
  1867. name: 'niconico',
  1868. url: 'http://www.nicovideo.jp/search/%s',
  1869. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAASUlEQVQ4jWNgoCYwMTH5b2Ji8p9ceZwKidZIsY2kYhQDSAW0MYAUg8h2AbJltA8DWGiTZQB6lJHlApK8QFFCghlCMMmSoZYgAAAvUMVwhox/egAAAABJRU5ErkJggg==',
  1870. };
  1871. engineList.video[8] = {
  1872. name: '爱奇艺',
  1873. url: 'http://so.iqiyi.com/so/q_%s',
  1874. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIABLAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAARJJREFUeJylk71KxFAQhb8bw7IKgbW0sxUuiPgA2ttsodhaLOwDiBDyALKNnYWBFJYiKttspUhaQRAh4GMoBDSkuRZOdHTDkrgHBs6dnzNT3ANzwkSJXQUOgPVuJ+gDFGVe29ztBEh9DDwD5z7wBPT+Nr5/5BOdW1oMdtSzL7Hly/Db8SBbbnN6lNhXYLvNTC1MGFsHHAJrwEDVJsA9cCKbUrWx4qmnBlYARsPMzFh4JPENX5Q2G1x7BewKv6uSnpzTBBeKn2mBX3DO1V4zGmbXdXxKoC2mBE5v9h/nUnx4udwLY+vC2N426TdRYh3//4k9UxH4MQsw0wvKbKkPbCBu5MsgFGWOt4A2D0WZ6wVjxI2fleZQvCOg+1AAAAAASUVORK5CYII=',
  1875. };
  1876. engineList.video[9] = {
  1877. name: "樱花动漫",
  1878. url: "http://www.imomoe.in/search.asp?searchword=%s",
  1879. favicon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAXCAYAAADgKtSgAAAEZElEQVRIibVVTW9bRRQ9d2bee67tOk7qxq4TxaUJqdSQQJWqEKhAFMQCsWGDkMqKBUj8BPbwDxCb/gBYABUIgfgopQJRaNoqrUpImtAkrfPV1E6cOLHfm5mL3nPjJCQVYtErzeLd++bMveeeO4NHaRRiM/OuI0zov7sCXgtAvW0QQkCPLcJeno3+JleBOlMkT+ahlNq1n4j2BvfnKtBfjTGv1IDAQuZT4L6DRL/dZerLkMgkYJd9mMkl5koNzgtHyD1+6L/B/RsL0J/eZHEiB3mqQORJmPNTbH/8G+qdQVJPZBubAFgAwfV5mHN/sTx9mNxTh5uxEByb4OHyZ5ax9v73XLtahH3gC5dmxtqHF9gfmY2+rTWwxmztW1hF5YOf2J8uN32hiSbHzAg+/5PVS2GJ+WYGoUkAzpv9RNlko7pKDf5avRlX7Uk4AznwH3d38NvshLm+ACaCc/rIDuCofGNAXSmECdVG5hHUNbwns804P0hOFNK0JzgmSyw6UjtAQ8UEMyWILybY74iDYgpyogzqSoNv3IN+q5+Ep6AvFyEvzcIOdbIJNElH7aQFnSni+9WoSU3wuQpqw0XWCQlnWUPULEShBV7CIXVtAXp0ERvL69BXiiwHc0BxFfWPh1lX/UZTNxsahFl+dIkVC/BQJzmDeZjx+7BfjrN+Jkuy7DPtj5HxCGq0zDrtIkhJ2ne8E6o1DhIUJeafvcpocRF/o5/EJmf221uQJMGh9CZLUWM444Et4I2U2LTEyGz4LGfXWBeShKRLsZElFqNLEKKh6ajxr/USL1S3OA9uLkBfm2P33RMk2+JwQt98BXpsCTjWCpuJE+93ocaWQFaACy1whudZVjTMRIntqQJt8ivTMYiEswXOt0ssBtqh2uJNpYTKYM2w7XFSmqFu3GPuayfjyShFczJHwWSZkYqRqAcQXgMQgYExZguc4h7RRtDUqK0HCAcslJ+8OMPu9CpsPgndxRCrdfD9DdaSQIcSJB/PwJ9aBhXSkDEHQbECWNoG3t0Gc/52xH3oJingtCfg5FIwt8pkYor9nlZyRxbZ5BKw5RrkwQTks4fhCQFkt+n99yKrrobeI6pkIQ1iC3N1tiEhJSGEjILq1V7Qmf5Gx5Z98NIG+Ggbua90E12eQ+27W9E8hEqpX5gCL65DPV/YyjwEcV58jPxPrjMV0qQOxJtD5H8zzs5gnhIDeZjeDKmqD9nRAgWCn3KAH2ZZz1VhjAZXNNwzAyTjzk6dhyXVf52G/WWanZe7iTJxmJ+nmcsbcN87ScKR2Mvqn91kXqlDPN1B8mgGUjX+C2/F5viHp3jPFeCnXNIXZ9gKQGiG6DkAeghwNB93KsBQB7l92V3xPR+LkD+uBbCOQHD2CjtDBVIDO+9xW6nDnBtlUw3gvf0UyU0pbgI/7CXabv7YPQRfjzNy+6GySQoHwJTWOWysaIvBff0YSe9/PHP/Lt1UazDDc8BKnaMZT+8j2XMAIpvcdvPtBn90BuAfCZ4kdEzEwCkAAAAASUVORK5CYII=",
  1880. gbk: "true",
  1881. disable:true,
  1882. }
  1883.  
  1884. // 音乐搜索列表
  1885. engineList.music = [];
  1886.  
  1887. engineList.music[0] = {
  1888. name: '网易音乐',
  1889. url: 'http://music.163.com/#/search/m/?s=%s',
  1890. favicon: "data:image/svg+xml,%3Csvg t='1666873073102' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='14673' width='200' height='200'%3E%3Cpath d='M604.71296 63.911253c-53.548373 19.667627-95.06816 77.038933-95.06816 132.222293 0 16.390827 3.822933 43.165013 8.741547 59.55584 4.911787 16.390827 7.645867 30.59712 6.557013 31.143253-0.546133 1.092267-18.03264 9.28768-38.792533 18.57536-72.669867 33.3312-124.576427 101.07904-134.956373 176.479573-18.029227 126.76096 60.101973 230.57408 173.202773 230.57408 72.666453 0 134.95296-43.165013 160.631467-110.36672 16.940373-45.89568 11.47904-104.905387-20.21376-204.89216-8.192-25.678507 54.64064 9.28768 95.617707 54.091093 50.26816 54.637227 68.297387 135.502507 46.987947 214.17984-19.124907 69.389653-77.03552 136.598187-146.428587 168.28416-184.674987 84.691627-385.737387-11.472213-440.920747-210.899627-20.763307-74.8544-13.66016-145.33632 22.401707-222.921387 27.86304-60.101973 86.326613-120.203947 146.97472-150.254933 48.626347-24.040107 58.463573-32.23552 62.83264-52.452693 3.826347-18.57536-8.741547-45.89568-25.678507-55.18336-36.061867-19.67104-118.019413 21.30944-192.8704 96.160427-68.84352 68.84352-101.625173 128.39936-119.657813 216.91392-38.792533 187.948373 57.91744 387.92192 227.84 470.429013 61.740373 30.59712 112.551253 42.06592 182.490453 42.06592 154.077867 0 289.57696-78.67392 355.689813-206.527147 32.781653-62.83264 40.977067-100.532907 37.700267-175.93344-2.73408-72.123733-10.92608-102.720853-40.98048-152.439467-49.718613-82.50368-134.406827-142.05952-216.364373-152.9856l-27.316907-3.280213-9.84064-32.781653c-13.653333-45.349547-12.56448-60.101973 4.37248-73.212587 18.029227-14.206293 37.700267-14.752427 62.286507-1.092267 46.441813 26.22464 54.64064 28.409173 73.216 22.398293 19.124907-6.007467 36.05504-30.047573 36.05504-51.357013 0-19.67104-26.76736-48.080213-63.924907-66.112853C696.507733 55.169707 639.68256 50.797227 604.71296 63.911253zM574.65856 460.032c19.12832 71.031467 20.76672 91.245227 9.291093 113.646933-18.57536 34.966187-72.666453 46.987947-99.44064 21.85216-22.401707-20.759893-29.50144-39.8848-29.50144-78.677333 0-40.434347 10.92608-67.20512 36.604587-90.699093 18.578773-17.483093 57.91744-38.2464 62.28992-33.327787C555.54048 395.014827 564.82816 425.065813 574.65856 460.032z' p-id='14674' fill='%23d81e06'%3E%3C/path%3E%3C/svg%3E",
  1891. };
  1892. engineList.music[1] = {
  1893. name: 'QQ音乐',
  1894. url: 'https://y.qq.com/portal/search.html#page=1&searchid=1&remoteplace=txt.yqq.top&t=song&w=%s',
  1895. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADMklEQVQ4jY2TbVATdADG/3cBDgkNN2QyZWMhoKQwtLIyQ/DgaPvAAUVddUjU2UUdd3Z1vmR2B3VxUWhJqyBS0vAlDo7VImCWsPM4KcC0BtgYgzFjzcmY42Uovz7lnZ3n+Xx+fs+X53mEuDvJ1E+G7L5LrwjaqFmed6D8ibqaU6mdpd8s78ozLrny6M7FvUKIkDuSccrwRyy/Vg14ffUcdmt56aKcp87cR/a3S9C3rsHavcG2Pl6ScVtYs06ePePpmMXXQs/km1Q4tlDQJiOrPpw3GlR4/9JyfSwd34UH5rc8GPL0LXBoqFh11WmYXPC1sHC1lsnxfZRZNLzbloitL4fZoXwCl3TMDaXjP6/hsil6WhouEm8GfFyeU7vgbeaG+3OuT1Qwb99J9wUdr55O4FJvJtO/a/H3Z+HvS2OqW4PHFEPNW6GN//GLPMOHfPOuagLj+wmM7WFmoJhr/fkc6XmMyva1TJ3NwNuVxuSZzXg6NLgMSuwnlwaEEBFCtjQ4dW78IHP2t5m1ljBj3YH/z2K85ixGTI+zz6yh58dU3MZNuL5/iImmZJzHVYwfW4YySqQLdYxk2/TQbvyWHfgtz+MfLGDGVsKVjnRchof5uXUD77UmcPmUBufxZBxHkxitUzJaKyVJIfKFTBa80XtuO96eAqb6c7k2kIt/5FncYyX8NFDE4T+0lJoTaWuIY/TrNYzUxGOrXsXwp1JipGKbEEJI7E1b/f+0Z+ExZ+I9r8PhLmLM/xpn/36R0l+SeO6HFbx+MhLbF3EM69VYDyqwVETMCyGkQggh3i9eWe/Qr8ZaqeBcUwodzjw6HTmcHtFR99tm8uojyPwqlL4aJbYvVQx/puDQC2EtN2uUSIT6YlWsz/aRgoY6OYVGBbvaV3PAnMIHpiT2t8ZR0hzJ4LFYRo+qGNSvmI0IE+tuGVOqOiTXUrky0FUVRXbtYtKqF6HV38srJ+Tsao+m2RTLhDEBR+P9N9LWBxfeds7qqKCMznfk9u8+jOSZcglby4LY/kkYBoMSl2kt/UdUzmT1Pbo7HkoIIdkUH1xYWbTsRMteea+xLLqvujSyMT1F8rIQIuz/5n8BdBDOUVi5DnwAAAAASUVORK5CYII=',
  1896. blank:true,
  1897. };
  1898. engineList.music[2] = {
  1899. name: '百度音乐',
  1900. url: 'http://music.baidu.com/search?ie=utf-8&oe=utf-8&key=%s',
  1901. favicon: icon.baidu,
  1902. };
  1903. engineList.music[3] = {
  1904. name: '酷我音乐',
  1905. url: 'http://sou.kuwo.cn/ws/NSearch?type=all&key=%s',
  1906. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC+klEQVR4nIWTX2hbZRiHn++ck3OapMu2oG3WCm2XUJm4zihK/TN0rQ6ZcxsIq0w6hG0XE/FC2BgqInhR6o0yN8U/IBYVp2PMC91VsReheFFdt27FaknDTE66Lmt7mpwkPfnO+byoE4SpD7zwXvze5+blB7fHiIRI73iw5dt3j6VVsi06BMRvFxS3FguSsfbkwY6e3hMnDwVmulOCUiA0KtLk/E8uJ89dreSn7ONLS5XPgSqACMGRF0798LEZshBizahpgtL8NOXJT7lu6Ow48DC6JlBK8fuSjVSSX94fr9gTpVbx/ScDas4J8dFsN4mOu0ktXGAwUuCeWAiEABTvTBYYv78ZLR7FX3SIZRyG97Wz642f3zKK+TyHn01xcKdL11NH2PV4C6m4jywBmgaGzqHWEOZUmWq1yNCJJ2FwMyISJf/iKEbY0nNApykX6dqzjYmnU5z5epL9hkvLepOzWZ/hvRt4rfcBRDRG/dI4ZGeIPDNAADnt1zknACDwUIDrChK772PE02lrD3Hm9UfZ5DvUM6P4dhb5h00jW8DPfQEgtc/OZ69lphbXXqEU0pfkl4uUPAcME2FZEAQoT1IbG0cWlolslyjnKgIKxvbWcD294LHz5QzFVsFN2wPF2ug6wrLwb7oE5TrBimTd/m6EkUcYHehctjXpB/PeDZcvewRqxiC4VEYFCsVfAl3SmHNpXLHw7WacD4vI5W0IazMCPO3OqJlrVMuslivITX2Et5ymacyiMl2G1d9QCyMEhSj4ArP7DpSrWDk1hQgnWYWc8cGEPXRvk/tqX3s45q9cp27PQ/Io4doIhjmLaEoAywBsONyDMjeCFuWr72ZXAAzAeynjrO9vq42qhOpTgYQgIGhK4AcFhNVFaKuNqjYQVhcT06Xgkd1vvyLh9C0BAKO216/b556LpB47q4XXrfVAb0ZYncSPprk2X2NLeuibG05t4F8K+DfN8YeeX2p5YlCNvdevnItvqt6td80A5v8d/gMdhg340YLUf+X+BAnLRacR4gVKAAAAAElFTkSuQmCC',
  1907. blank:true,
  1908. };
  1909. engineList.music[4] = {
  1910. name: '5sing',
  1911. url: 'http://search.5sing.kugou.com/?keyword=%s',
  1912. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIAByAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAjlJREFUeJytkz9oU1EUxn8v7zW5xNekhSL+QxoUmmBxUozRxcUOgg2pgkJxrWBBqh0cdROqg5BBBaeKgkIIIkLawUFsaoUsUtLaDKUNVklKQhrb25j3rkNfYqx2EDxwl3PP9333fPccjW0RTZhngT4gAoScdBaYAlLJWHWitV5rAXYDw8CQEMI0dB2XSwfAti3qloWUsgo8AuLJWHWxVbU7mjDHL73pUlcm96lsKa1sZau6XWsey64rW9lq5utrFU2Y444ghsMxLIQY9Lg97NkVoMd/AltZfC7PUJR5iht5ANatCvOlaYQQg1LKb8Co4fQ85G5zA3B893k0TWMsc5m5Unq7RQC429xIKYeiCXPCBfQJIUxN27Kju72XwsbyjmAATdMQQphAnwFEDF1vXgY7IqzXK/QHRpq5oswzX0pTlPlmzsFEDCDUcBvAa/jwGj6igRt/KM+XP3A3cwGg8UMhY3vRs9xtVjfyFGWepbVZvIaPYOdJ+gMjBDvDnNp7kfcrL3+9BMjathXW9S2uyaUnvxGu1ytkCimW1mYZi6TpEgeArdkAsi5gqm5ZOxrWiKu9caeNaQAczJQLSEkpq0qpvwIHDt3i8Zkch/3HeLX4gLlSGqVUYypTGkA0Yd4TQtz0uD0cbD9CT0eY/sB1vIYfl6bz5XuO5wt3+LT6FoDN2iZSyvvJWHW0YWL82tGH507vHwg2lJercyyUP/Ju5QWZQgoApRS1HzWklE+BOPyHZWoStBD90zr/BDWFAshUlB4uAAAAAElFTkSuQmCC',
  1913. blank:true,
  1914. };
  1915. engineList.music[5] = {
  1916. name: '一听',
  1917. url: 'http://so.1ting.com/all.do?q=%s',
  1918. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABfUlEQVQ4jZ2RTUsCURiF/SFton27qIgoQ9skidJSF5qu2gZRtGrVan6ABJGbIqiwDz9CLSINIceKcNOoV8MpxQ9EJ2uc62nTiJUj6gt3c7nnOec9V6VSGIZQ2GLCr8MQCqX3LRFDKKysAFNUgNrLY8qdwehJEqtsCSvPn8oQhlAsP9RhZQXog1lo3ElMul7o4mEcW4EkVTufsBHNw3xXqCsCxvcib/pgFjofgeaCYMyVwOZ1Gh5SARN9h9aTgtafgzlSFjtC1mJFwXCZxtwpRydcCcyfc9RDKqh+iZQXREiSRPEzhrM4/y+BMyvilq/iOFXBAVfG33ks1sEQCoOPK3RuPZzDbqbWcmo0RAoAktSgTQByyYod2MI52G9e8UGbLddwsYH7ktjbF8oAOYHsyBCKnRp6AwSyVcjiroJOAIZQHJHKYIB2SDtAvlvaduz3DLGwQmt3Y6iMoXWHt+8kFlbAwlUes/48RmZ09r7XkUHGUBnD01rTQAAZ0q3Qb/EHnAbFqFNRAAAAAElFTkSuQmCC',
  1919. };
  1920.  
  1921. // 图片搜索列表
  1922. engineList.image = [];
  1923.  
  1924. engineList.image[0] = {
  1925. name: '百度图片',
  1926. url: 'http://image.baidu.com/search/index?tn=baiduimage&ie=utf-8&word=%s',
  1927. favicon: icon.baidu,
  1928. };
  1929. engineList.image[1] = {
  1930. name: '谷歌图片',
  1931. url: 'https://www.google.com/search?q=%s&tbm=isch',
  1932. favicon: icon.google,
  1933. };
  1934. engineList.image[2] = {
  1935. name: '必应图片',
  1936. url: 'https://www.bing.com/images/search?q=%s',
  1937. favicon: icon.bing
  1938. };
  1939. engineList.image[3] = {
  1940. name: 'pixiv',
  1941. url: 'http://www.pixiv.net/search.php?word=%s',
  1942. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACaElEQVQ4jY2TS0iUYRSGjwupXYsIAqFdDl13tclNd6WgZVQULZrB6ddsbhA1FwkyNQOjCMz805nxMiM6ajq/OkjZxQElLS0sK6NQI7QkCCrTnhbfmBMatXj54PDxfO97zvlERERM245IlqbLXut/StNlj7VM0kzbRdZlHBVfJ+LtQDzGgtwGci6KuKN/1ueVH0Nc9bMi+3KD4u1AnGHEHkK0IHIyiNhDLD/TQIozrGpaEHGE1D1nGHGGEF8nIpnZt8QdRaxBUh0hDvl70HtHaR4ao/XZBLHn72kcHONwoAc5XYucqkFcCYjHQGSHRRdXC8eCcQbHp3kwOsnxQBxTQRurPBHSL7Ria3jE568zdL/6wGp3REHmASv3a3rkxRTfZ+cAWHsxipyoVK/Z69RpriK9oI0fcz/pH/vEMkdIxfUYSHlFhd40Mo29aQCATZc6kNyapKxhZdlchaPlMQCW+j7EGkg0s+SqnlZ8F0u4D4DNJUsAnGEkt4b1RQYAxvAEolWrCaVmaXqKsxlngv5XQF4taedvA9D39iOSV6sAssuiiy2C618ArZqtpTEA6p+8U2N1RxHZa9XF3vQbsKG4fTHAFkLMVfj73gCQVd6tIniMxYAtpTE1BWtAKduP5FTjbR8C4Nr9l0hOddIeJAD2ZjWFh6OTlPe8xmcMYWse4HLXMIPj00x9+YYt0q/c2euSAJnZlckOdl6/w4GybrztT7lyb4TCrmEO+uOsONuoHCWvswJoleJsxZFwYCoyEHPVQgRrQOW11S1ubH4MkTUbd4tWM1MYnwAg42Yv4mpZ+gcmyxdDrDcmfgF4QGAxnLBCrgAAAABJRU5ErkJggg==',
  1943. };
  1944. engineList.image[4] = {
  1945. name: 'flickr',
  1946. url: 'http://www.flickr.com/search/?q=%s',
  1947. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA+klEQVQ4jWNgGAUIIKBqwKCfUMSgGZXJwCklhy6twSCoW8BpUZTFaZIjz8CviCprXtbFkHX3PxynXPrGoBIQC5Ou57Fv/C/Z+B+Gf4jV/szgMs6EyMq7BqJoRjaEQ1zRmUXRFVkzsiEaDIK6DAwuE1ZgNSDr7n8Gvbj8Wfy+c7AZ8F+y8X8tl30dA4PrlNU4DdBPKFrCH7QUlwGNPE4tDAzqoclYNaff+MMgoGoQwaYdhcsAGxY5G0g4eExZh2GAUVY1LBCX8wevQNfcyevShRoTim4hDHZNMxls6yczSJjao0ejP5ta4Axe35mT+DwnO7MoupKfXoYfAABPvsL2GuU3QwAAAABJRU5ErkJggg==',
  1948. };
  1949. engineList.image[5] = {
  1950. name: '花瓣',
  1951. url: 'http://huaban.com/search/?q=%s',
  1952. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1klEQVQ4jYXOyU+TeQDG8Z//gIkxXogxXky8TTIeRhMzcSEdoKW0SIFibYuJLFbZVGyxlLbQFoqoBEhEBSlbA4xxNwq9zMXMeTLO0b4vWOhGoSKBUfHrAZdEEZ/kOT6fPMJtNLVPelpD92yNobv1ttCd2vNTI5aqhx0lxpv6/ftNO3fs2LN7+/a95Qd/r75VZBgPGsyTE0ZzaMJ4MvTQXBYSU772v/nrOdx/zIeJe6wF/+Td4CjvAqOsdl/n3xNlqf+Kjellh4dVfycrrVdY8XWw2noFOnoQD5yuEE8mWQyOsxAYJdU3SKovQMJ/lZmSUiK5OiI5Bcg5BUQqqom7fcScXuJOL288lzcAAsMkr/UwXVyKpMxHyitEUuqQFBrCmbnMmMqIubzEXb4NgMEgqdtDRMqr10d5RV+BrHwkhYaXh3OYKa0g0dxG2uNHjDU0PvoCjIwT93Uga/TIGv33wB9awpkqXh5Rkqi5iORoeSM6LZbedWCCheExIpZzSOpiZE3JxoBCTfhwNvPHDIwbzCGhP3TItPb4GYtjd0jdHGDGVI6k0W8OZOaSVORxYd9vzSJj27Zd8sDwwsrdB8z33GBaX4qsPf7zBwUGBtX5j4QQQnRVWvp5OkWy6zrTRSbk/E2AI0qkbC3Js+d5cbomKYQQYndGxt7ZoZH0cm8/8o8AhYbwURWyupDZs+eIXbATr7UiPqcsW3Xmfd8QEZ0RSV2EpCokrDy23iwtsqqQV+YK5i46mLM6iNbZWKyzfQWEEMKr03WtNraQqKonUlnDq/IqIqdrma21ErO7ibl8RC+5mau3E62zkf4WEEJsadLrfcuBEd4ODJPq7iVxtZuE/xrxFj8xRwvRBuemgBBCiKxfftU+t7v++b+3n7c9N0i3dzLf3Ea8yUOswUm03k6szsbrHwGfsrX4wMGTwVOVT144XHPznnaWmttYcnp5bXezZG1izdrER/CEaFr9QFrRAAAAAElFTkSuQmCC',
  1953. };
  1954. engineList.image[6] = {
  1955. name: 'Pinterest',
  1956. url: 'https://www.pinterest.com/search/pins/?q=%s&rs=typed&term_meta',
  1957. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACD0lEQVR4nO1WsW4UMRB9sxsECAmlpbrbRKwpKE4nk0i0/AQSogGlSInID/ABKegoEimioCC/kJYiySKCkE7aC8rtUdKgSClQyHlSBN95N/batyQVN5U9nnnvzazXNjCz/92oSVKWiPcAnlfcR3KQL16rgCwRHBKn1Ki7NPz+5coEhBJXTQ5yL350XeShubUKnQDMZ7Lo3zBdH4F4IRFntvC6TjgXsnb6B0Rz04CNcy3CXXluARWQW7fjmw97vVPXesSq0y0OvzpFUNySR70fVR7rHthPxK+qT5NnbbFhq1BRdGD6L1XMo6GNyyqAgHlzrsE+L6RPQHhpy9GWJWL8+7HCal2sU0DJmD9MhrRzMcCxHOTk+K4dPXg0zN+VxLXFrldAlqRb5lwW/WcAkLXSBxNfPj8OUPzKV8PYCEteAcz01Joc4a0dlN4EC7DCVvGA39ZIxje7ANy9UgEAts3Jbut+BwBk0V/7F6JgAbLIV8x5HEWTXQ1+7QM0N+Z+kp6UFhl7XgE20/83gdZNv+6Oywh0pySuyJeDBDDjp0vESMX3tG95eHgwyeFTs/rQSyz4KNYWchfsLYrHkcKnMtMURzFwUVEdietIzhLBl8gB2MiBBtex7sA074S6rtVuwmqiryvTknsFWADWnYENyIMEaCA5yIn+/h2+9is16oaQA02f5e10E0QvKu5Gz/KZzewcjEjYbJKZwQoAAAAASUVORK5CYII=',
  1958. };
  1959. engineList.image[7] = {
  1960. name: 'Yandex',
  1961. url: 'https://yandex.com/images/search?from=tabbar&text=%s',
  1962. favicon: "data:image/svg+xml,%3Csvg t='1666872628734' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='10516' width='200' height='200'%3E%3Cpath d='M451 1024V691.8L229 96h111.6l163.6 459.4L692.4 0h102.6L553.6 695.6V1024h-102.6z' p-id='10517' fill='%23FC401D'%3E%3C/path%3E%3C/svg%3E",
  1963. };
  1964.  
  1965. // 下载资源
  1966. engineList.download = [];
  1967.  
  1968. engineList.download[0] = {
  1969. name: '海盗湾',
  1970. url: 'https://thepiratebay.org/search/%s',
  1971. favicon: 'data:image/jpeg;base64,AAABAAEAEBAAAAAAIAA2AgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgCAAAAkJFoNgAAAf1JREFUeJx9kj9r8nAQxy8xLQatGmPtIoiigoKCoAZHyeQutEtBHHRpl7yELq6+AP+8AIcWOxURQRzMIDhEyeLilIKDQYUg+eWeIT48VujzWe4Ovtzd9zgKEeEvl/kVFEXZCWMHVVUlSTIMg6bpK6ndpV6vPz4+nmtE7Pf7v/W2qVQqtvI8gWHOyc3NDSGE4zhCyH6/BwDLshDx9vbWFvxYIJ1Oz+fz5+fnXq8ny3KtVnt/f282m5f2mMtFWZblef50Or2+vjqdTtM0X15eFEWx5/zzhIjtdtsuvV7v5cy7uzuHwwEAhULhdDoh4vVNdF0Ph8MulwsAEomEYRiEEAA4Ho9nD8vlUpIk0zTtToIg5PN5n88HAMViURAEjuMAIBgMMgxDCKHG43GpVHp7e3O73Q8PDxzHHQ4H0zTtVVmWpWmapulcLjcYDKbTKTMcDgFgPB5blhWJRDKZjCiKqVTKPvRut1utVqqqdrvdVquVTqepr6+vz89PRVEajcZiseh0OtvtNhAIxONxTdMMw4jFYqFQ6Pv7W9M0QgiFiJqmJZNJn88XjUbv7+89Hk8ikbAsS5ZlVVV5ns9msx8fH6IoVqtVQMT9fu/3+yVJ0nUdf6Lr+mQyeXp6AoDZbIaIgIimaY5Go+12i7+w2WzK5fJ6vUZE6j8vfQki2h/+B8UpLqpv9VygAAAAAElFTkSuQmCC'
  1972. };
  1973. engineList.download[1] = {
  1974. name: '谷歌搜索',
  1975. blank:true,
  1976. url: 'https://cse.google.com/?q=%s&newwindow=1&cx=006100883259189159113%3Atwgohm0sz8q',
  1977. favicon: icon.google,
  1978. };
  1979. engineList.download[2] = {
  1980. name: '动漫花园',
  1981. url: 'https://share.dmhy.org/topics/list?keyword=%s',
  1982. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1ElEQVR4nCXTyY7cRACA4b9c5a3tdi8z6e4JsygzTKJIcwJxyTPwfDwJnDjNBQgicCFESiRamSW9jt2r7barXBz43uETP02srSws04JD7tBUPv0RtHwAGC8tgxC+fyV4mMPNAMZryy9Lwd2TRu01VAeYTva8+e6YsoDbv1LiqMdun+HJkJeXHlHT8CJy+JxazjoOL2rBeC5QsxWkU8siaxjfafqx4OV1F7B0vA6ykdS1ZaYl/ZZhGCkeU83bj5pdblGzZcFwFHJ+McBRmnRnCbFIqSiNBXPAOIJ3D4ZAKk5VzqxUBL2Q/SJHbfca12wJByEEClNpssaQaUGaHohcwdmRywKXNKv48aHg8qsu89UWmgbneNgmLeHnX6fcTyzSkRS1x+0fcz5/qdkeJFFXIQr4+EmzLRLefdiQO22c0wRV19AKY6Ijh0KDdOH+3wkXF22+vW7DwfL7+wWLDBrj8eabFunGMF8tifMYB8ANBYd8QSM0xhquzk+oVw1uU+DFFiE6CNenn0ieJZrLkU9CyJFyUSjLdLzm9NmAr08UERWTnWCyXbOpz+j4lkHHkEQtzp9LTA1uy2KDkNqxqDKzXA18Li5CdjuN9jzu7kp6SUIImHXDsB3QTqB0DOVBMh8f2G+h7AWoOBBcn4ek2YFKeJCDFgIAzwKOZK/hyyMsVxnrrOLm9Qjh7OiXCnW/2PG87YGS1AZkY0iOFPapAqD2NL/9uSQXCa7oEokNw5Fks4tQyqB6wza3759wNLy+iYmkR7XLKfGQLpjG5eqqy9Oqpt2SXJ/3iY3huC/5NN6jAgkngx7T6YIo8FGqIokUs6xmU0CrbXl1EsDAASnAVJSVQgNRO8DphJZ+1wFASuh0PPbZmtNRl7d/PzDNGkoLbvh/z9z4PK5hNsnoJBLxwz/Wrraa+RPYpiA2UFiN348BeBznWEcTBz6HqqRxXOLQ5fTYJ+pI/gNDt17HeSMTvQAAAABJRU5ErkJggg=='
  1983. };
  1984.  
  1985.  
  1986. // 购物列表
  1987.  
  1988. engineList.shopping = [];
  1989. engineList.shopping[0] = {
  1990. name: '淘宝',
  1991. url: 'http://s.taobao.com/search?q=%s',
  1992. favicon: "data:image/svg+xml,%3Csvg t='1666880201701' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='32068' width='32' height='32'%3E%3Cpath d='M228.96 172.16a76.64 76.64 0 1 0 75.84 76.64 76.32 76.32 0 0 0-75.84-76.64zM317.76 535.52C307.52 458.24 160 360.48 160 360.48l-57.6 82.24s123.84 61.92 134.08 112S66.56 753.28 66.56 753.28l128 94.4s133.28-235.04 123.2-312.16z' fill='%23FE5100' p-id='32069'%3E%3C/path%3E%3Cpath d='M957.44 380.96c0-66.88-66.4-152.32-174.72-171.52s-263.04 60-286.88 64-30.56-3.52-30.56-3.52l27.2-53.12L400 178.56A416 416 0 0 1 355.04 288a425.28 425.28 0 0 1-74.72 92.64L338.08 432l76.32-90.88 50.88 5.12L372 464s3.36 39.52 32 41.28 72.96-67.04 72.96-67.04l52.48 10.4 1.76 68.64H360.16v46.24l169.6 5.12v145.92s-48.96 7.36-70.56-23.2-12.96-78.72-12.96-78.72L336 609.28s-6.88 84.64 22.56 126.88 90.24 57.12 152 51.84 215.84-70.72 215.84-70.72l10.08 46.4 81.44-37.76-49.12-130.4-66.24 13.76 6.88 56.64-81.6 36v-130.4L800 564.64v-48H624.8V448h168v-54.88H517.92l40.8-80A562.88 562.88 0 0 1 679.2 272c48-6.88 69.44-10.24 113.6 17.12a108.48 108.48 0 0 1 50.88 67.04v381.76a96 96 0 0 1-60.96 53.12c-48 16-124-1.6-124-1.6l-6.72 53.12s128 25.76 210.4-8.48 95.04-132.16 95.04-132.16z' fill='%23FE5100' p-id='32070'%3E%3C/path%3E%3C/svg%3E",
  1993. };
  1994. engineList.shopping[1] = {
  1995. name: '京东',
  1996. url: 'http://search.jd.com/Search?keyword=%s&enc=utf-8',
  1997. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACoElEQVQ4jZWTW0iTYRjHdxcUfrPZtq+cm25LxaQSQ4tO2IkKO1yEQVEERWJFYUQJQQUZUWQG0QGKIgoCS4pVBlKapH6fztNsW+zQZnOW5GGyxFkQvy4+LbUguvjxvu//efjxXDyvqmCaUFymFitKBf1/U6YWK1TlgljVMzsNt96qoLPi1lqUc/w+zng21tsjpqEqFfQVbr0VWWv+CykKsxSkhGQkjUl5a824ddYJglkpyDoLrRm5dK7Kx25dSEdOHq5NBQqbt9OxZA3Nxnm/hJMEUkIyTeJcfPuPEKmuwb11B+ErN4j5Aww73jHc6eRrcyufb96hMy8fSWPCNUmgMdE0O5Wuk2f51tODd08R/bYqYv4AwZLT+IqK6Xv0hNFQNwPPXvJu7RacmpQ/BcGSM8QCQTy7C+mrtBF5VUd71jIapou0ZuYSLr/G974+ui+U41Qb/y0YelOPY+k6GuMSaZwh4li5gahsZ8D2Ak/aov8QqA1IGhOtmbn0V9oYfFWLPydvikCcS/DE6b8LBANSvJH27BUMVFUz+LIa34KlYwKdhUbBgKyzEDp/mdGPITw799FfaWOo9i0dS9bQMF1PY9wcvHsPEgt00Xv7Hu7EdFSlgrbifVIGbVnL8OwuJCrbGXY4cW7cRv/T50Rlu7IDi1fjP3SMaEsbI14/nl37ccablAm6Vm/iy8PHjHj9jPj8dJ06R0t6NpHqGn6MfiPyuo6hunpGvH6iTS0Ejp3Ebp6PS2tRBMHl6wmXXeXT9dv4DhylJS0bSZPMh8PH6b37gM+37tF75z6hsxdx5RfQbMxA1pgmbKLWjKQ2IAkGpPgk5IRkZK0ZKT4JKS5RyQWD0jPT+Kvu1llRXRLEqrCYiktr+c3Yr5uUTam5dVbC+lR+AkXUXUZHV2HdAAAAAElFTkSuQmCC',
  1998. };
  1999. engineList.shopping[2] = {
  2000. name: '苏宁',
  2001. url: 'http://search.suning.com/%s/',
  2002. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABMUlEQVQ4ja1TQU7CQBR9xNWwpUTJNF0A4VCEhVvjBRo5AAR2pjHxAO0C40JMqXgDTfQE0mqiB8CFganxuTBtaKdFYvzJ28x/7/2Z/+cDJWFU0fBtzHwbgVFFo4xXGE0DndBBxAnICRg6iJoGOltFgy6GaxcqEZVh7UINuhhqBspD/Js4gfIQawa7ihNkxK062ptJy7I0Qf6sVUcbACAFzMUpwkLy9ICc7hcahA4iKWDi5gS3+Worr0I+nZH8Iklycc6VW9FudW3D1w0u9sj7Q2px1/vJbXB9GzNIATN08Jwm3q5IkpZlZUCSfL1MxZGDFylg6k38/EiLZsQkGb/rTdTG+HBEqqX+BLUkH4+Lx/gvH2nUw3gXE+UhHvUw3roXf1qmfNQEZNDHPOhjXhOQZbxvFy/H102X8MIAAAAASUVORK5CYII=',
  2003. };
  2004. engineList.shopping[3] = {
  2005. name: '亚马逊',
  2006. url: 'http://www.amazon.cn/s/ref=nb_sb_noss?field-keywords=%s',
  2007. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACHklEQVQ4jY3QT0jTYRzH8a9d0m1M8rbMZklQbjRDOpSnHXSTjpFHvVgH0UODwShJWn8gGXXRi6Q1lIpfWYwCYZkQwWqHdhrYH/UwgxmzGU5sv7Hf3h3CJ3U5+sJzeL58ntfzfR4REbHZbPZgMHhL+8+ampp61Nvbe0lE9ondbj+SSqWW2VWRSIRAIED/wABjY2Osrq7ujhAOhyclFArd3d5cWFzE4XQiIjuWtbaWN3NzZYhMT08/39qUSiU6PB5EBLPFwp3hYYaGhqgxmRARvJ2d5YCmadrWxjAMfD4f7e3t3B8fVyG3242I4GppwTCMvYHtFYvFGBkd5bLPx2G7HRHhRHMzuq5XBpLJJGfb2tTbzRYLFqsVEaHZ4agM5PN5TrW2IiIcrK8nGo2ysbGB1+tFRHA4nZWBRCKhbvb7/Sp00uVSE1T8xA/xuAI6PB4ymQzjExOICFVVVVRXV/N6dnZvYD2X42hTk0JqzGZEhEMNDap3PXjzX0BJNeLxOG63mwN1dTQ2NnJ1cJB0Os2Fri4CgQCGnoO1edhcUcBT9Hn4dA8K6wrK/syhF4plb+b7W4hdhPc9CngGRfg8AjNnIHEF1j4Chb+HjCJsLsPSQ3h3HpK34cvoH6Cvr69fBX8kYO4cPDGBZoaXx+DVcXhRD5oVZk7DtwjoWeAX+XxeFxHZHw6HJ3fNCZnHsHQDFq7BygMwvu5IZLPZte7u7p7fLX31eStakCQAAAAASUVORK5CYII=',
  2008. };
  2009. engineList.shopping[4] = {
  2010. name: '天猫',
  2011. url: 'http://list.tmall.com/search_product.htm?q=%s',
  2012. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAQElEQVQ4jWNgYGBg2MzA8J8czADTvIOB4f9+EvEOmCGbydAMwxgGEAtoZwA6RtdA0AujBgxLA4hOyhRlJkqzMwCOOAUjv7eE+gAAAABJRU5ErkJggg==',
  2013. };
  2014. engineList.shopping[5] = {
  2015. name: '值得买',
  2016. url: 'http://search.smzdm.com/?c=home&s=%s',
  2017. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACQElEQVR4nG2ST0iUURTFf+d9g2V/NKSgRYSriLCZ0jLie+Gi3LWqoKCFEYG0tHBTREgQSLWQCIRoWVCbKKKC/oD0fVGG5Iy2KDCiRQTBUBJh+vluC2dkHDurxzvvnnvuuU/U4H1X17ooy16Y2QAAUgfwEedWyawH6MknyefaGlc9FON4CFiH1C7nHkjaXEjTi5Juy+wm4Amhpej9rWUCRe+v5NO0L8qyu4uMdB3AYHZtFDVKinHunaBY8v7ZUgdmW8e7uppcLre/ShgMAwh2T2fZDzNLK9RQMBsoen8EwI3v3dsm6eDOkZGfYX7+PmZfgIvAyep0SI8Nphe7Sq8E3QDORdFEzUgHkFqBAUEGQAinsxD6CknSXDs7Zm8n4vhQNcQ/1CGfJKtL3hvSnpw0Vs8bDJnU7xbyUnfJ+zMG56sPJuN4s8FVpBOSNtYLSFpj0OkW3Nh34FqUZcOYXV45O9scYFAhTLlyeYXB14rtl0tEwDmgAEwBtL15U0Y6t2V0dBrp2Bw8DC0tf4EblZrbdUYm3fYkmay3V/T+iEGIzDKDe4LBUhzPVbJRPkkEFAL0C6DkvVVquw0OyyyYtB44YHB8R5I8Le7bd4oQLlXzMLOZQpo2OgBXLq+oJNvuzO4ibSokyVGg18GTkvcms5s1YfZGudyGSg4L+NTZ2TTT0PArnySqcbR0dWa/JZ2dC+FRx+vX35YIVFHyfgJoq7u+Y/ABswuFNG2s28T/UfL+gZm1CrYBz2dnZg7vGhtb9uH+Affd7MpRvsLpAAAAAElFTkSuQmCC',
  2018. blank:true,
  2019. };
  2020. engineList.shopping[6] = {
  2021. name: '当当网',
  2022. url: 'http://search.dangdang.com/?key=%s',
  2023. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIADzAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAbpJREFUeJylk0ssXGEUx39zZ+a2g1QX7DxjMwzKJF2IR0iEWIxlV6KZeGQaEhZWbHRTsVCPJq5IG48IiYiFErZNmngUCYmgqGBFMljWq2Nx6l7XXAvxT76c73z/c/7fOd/DBhDyuqcAH0/Dd9vqVrmiJ794CZ29Bp2TB/NrYgHiEqBLA5frLsIX8rqnFH3nji9QUATdfULn5oOqQkys+K2fIL/Q4P+LKPq0vgaWF6EhIL7TKVZVxVZXwMoS1L439WELed0h3XM64eoKJqYhOcWI2tyAto/we0v4e1BMXm0drGxK8p89aGmCo0NI9cDwuLTwAEYFJWXQ9hnOzyDgh51tI8qTCdo3iIyCdz7Y27UQcDjg+jpsBx2JSTA5C1oPfNUsBHLy5OQf4uYfHOzD5DjM/YCICCh4q9MOfdalSRVWmJsRgZNj8GSYKCOj8QNkZllUcAOnQVDsEBcPZ6ePCMz/lPEY0tIh+jV0tpuWjWssLoVfG7CwLmXePSCXC95kw8AYXF7CyKBJwDhEd5qM5law2+HiLwSD8pRVVZIDflhbDRMI/4mVVeCvgVfR0v9AP4wOWzU2ZIPnfedbccyGGmWXmM8AAAAASUVORK5CYII=',
  2024. blank:true,
  2025. };
  2026. engineList.shopping[7] = {
  2027. name: '1688',
  2028. url: 'https://s.1688.com/selloffer/offer_search.htm?keywords=%s',
  2029. favicon: 'data:image/ico;base64,AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAICBAAAIiMAABwiAAATEwABIz4AAx0+AAAyMwAGChIADBQiAAAnKwALEh4ACBYWAAAwMgANGjMACAwQAAwYKgABHyAAAwsLAAEzPgABKz4ADh47AAE7OwAMEBYABgwMAAYIDAAHIz4AACwsAAAkJgABFxcAASc+AAcfPgABNTcAAQ8RAA8XJwARGCQADhIWAAsbNwANDxQAEBwwAAA3OwABLz4ABis+AAU7PgAGJz4ABRYWAAYPEAAPHTcABTc+AAUvPgACBgYAACAiAAQjPgACID4AACouAAAqLAAKDhQAEBosAAAMDgAEMz4ACx0+AAE7PgAMEBoABgwOAAoKCgAALjAABCYoAAQnPgABNz4ABT4+AAQNDgAMID4AAT4+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AQUREREQqQxIoKDApKysZGT5HR0dHRzw8QxIoExMdBBkUIEdHR0dHPDxDEigTEx0rOzsYBkdHR0dHPEMSEhMTKTs7HjgnR0dHR0c8QxISKCk7OzsNFUdHR0dHRzxDQxIwOzs7DTEAESA5MQM8PENDEjs7Ozs7RUdHR0dHIBwcPBIoOzs7OztFR0dHR0cDRzxDEyg7Ozs7DkdHR0dHR0dHPB0TKDs7Oz8BR0dHR0dHR0QdHRMoGTs7OyERG0dHR0dEBAQdEygTOzs7OzshGBwfRDQEBB0TKBIdOzs7OzseLggFNAQEHRMoKBITOzs7Ozs7BQU0BAQdExMoEkNDKTs7OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=',
  2030. blank:true,
  2031. gbk:true,
  2032. };
  2033.  
  2034. //翻译列表
  2035. engineList.translate = [];
  2036.  
  2037. engineList.translate[0] = {
  2038. name: '百度翻译',
  2039. url: 'http://fanyi.baidu.com/#auto/zh/%s',
  2040. favicon: "data:image/svg+xml,%3Csvg t='1666877034366' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='29943' width='32' height='32'%3E%3Cpath d='M938.666667 981.333333c-17.066667 0-29.866667-8.533333-38.4-25.6l-59.733334-119.466666h-277.333333l-59.733333 119.466666c-8.533333 21.333333-34.133333 29.866667-55.466667 17.066667-25.6-8.533333-34.133333-34.133333-21.333333-51.2l72.533333-140.8 145.066667-290.133333c12.8-21.333333 34.133333-38.4 59.733333-38.4s46.933333 12.8 59.733333 38.4l145.066667 290.133333 72.533333 140.8c8.533333 21.333333 0 46.933333-17.066666 55.466667-12.8 4.266667-17.066667 4.266667-25.6 4.266666z m-332.8-226.133333h192l-98.133334-192-93.866666 192zM85.333333 844.8c-17.066667 0-29.866667-8.533333-38.4-25.6-8.533333-21.333333 0-46.933333 21.333334-55.466667 93.866667-46.933333 179.2-110.933333 247.466666-187.733333-46.933333-64-85.333333-128-110.933333-192-8.533333-21.333333 4.266667-46.933333 25.6-55.466667 21.333333-8.533333 46.933333 4.266667 55.466667 25.6 21.333333 51.2 46.933333 102.4 81.066666 149.333334 59.733333-85.333333 102.4-179.2 128-281.6H85.333333c-25.6 0-42.666667-17.066667-42.666666-42.666667s17.066667-42.666667 42.666666-42.666667h243.2V85.333333c0-25.6 17.066667-42.666667 42.666667-42.666666s42.666667 17.066667 42.666667 42.666666v51.2h238.933333c25.6 0 42.666667 17.066667 42.666667 42.666667s-17.066667 42.666667-42.666667 42.666667h-68.266667c-25.6 128-85.333333 247.466667-162.133333 349.866666l25.6 25.6c17.066667 17.066667 17.066667 42.666667 0 59.733334-17.066667 17.066667-42.666667 17.066667-59.733333 0l-17.066667-17.066667c-72.533333 81.066667-162.133333 149.333333-264.533333 200.533333-8.533333 0-17.066667 4.266667-21.333334 4.266667z' p-id='29944' fill='%231296db'%3E%3C/path%3E%3C/svg%3E",
  2041. };
  2042. engineList.translate[1] = {
  2043. name: '谷歌翻译',
  2044. url: 'https://translate.google.com/?q=%s',
  2045. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC/UlEQVQ4jYWTT0ybdRyH34MH4wVjovG2ZIl60IMXNTgoDtlG/wAy49bt4r+8XSFm2SZGox6WWNnal45SbKAbygKbShAT38yMNC9LMGyQsS5OdGtpOwqNvNkLLbwv76+KJns8lES9jG/yXJ98kidf6bGn6vY42tWEo/2SVutXtZotHEcT2o5q33vSdlfbpk68OQSH4uCNw8F+ONAPhwbhlQ9mbkuS9NADBY72S1e8cXg9ItgfEbR2bxH5k5aw+PuRJ5994YGCGr+qeePQ2i1whQRuReAMCZq6BC0992k6+nVCfuetE7J8pEOW5Q6fz/e+LMsdbW1tH7pcrgNSjV/V3uiD5rAgNr7BzB2TyzdM3u63aThVxjcgSGcKCNvCtm0sy8I0TWzbZm1tDellv6o1RSE2bpGcX+fjbzcIjG1w+AvBvqDApQhGxlMsZNOsrhgY9+6h6zq6rmNZFlL1EVVr7oXrKZOOCzbeXpvLSZPxpIl81sYR+IPPLi6RufMr0aERpm/ewiwV0fXlyoJqn6p5eiBx02RgwmJfUBBSLQr6Ov4vbeo7NzkYXiZ6foxPzvQRHvyGyPAo/SM/kM0vVQTNUfCds5lNrzM5ZzKT+lfmCpVxKwLl/E9cvXaNxORVOuNDpLM5VovFimB/DPaeFnh7BSe/2+D4sE1jsFLDrQj2hjY53jdHOP4VysAFrkxNoy//TqlUQnrRp2qtMfB0CRqDgvrPBQ2dW0lDNq5QpYbcV+IjJc6xUz2kUmmWFhcxDAOp2p+YqgjKeLrKuJXKZNcWzpCNMyioD6wTvTjFqPojp88NM/fbbVYMA+kZd6C7JQaeHvBEwNN9H/d/cHZt0qiUcXT+RXB0maVcmu/HNSanr7OyYiBJkvTwozt27a7aufvVqp21/+Pxp+uddd6xhYZ3b7Dr8BRnBn8ml02zcDdHLpdF13W2fbbnX2o/W/faBJ8GJpi79QvpdIr5+XkymQzF4ur2gqonnttzUkmSSmXJ5++Szy9SKBQwDIPZ2eTaP/p6Y/2tPjpQAAAAAElFTkSuQmCC',
  2046. };
  2047. engineList.translate[2] = {
  2048. name: '有道词典',
  2049. url: 'http://dict.youdao.com/search?q=%s',
  2050. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2ElEQVQ4jWNgGFQggps34Y2i2v83imr/78gpvZdgYFBgYGBg8OXkCUMWx2sITOEbRbX/MAMYGBgEkMVxahZiYJCBKTonLX+fkDgG0GNlNYIpnCQsOh8mbsjCYgkTXy8uvR+nAcgK0/gECmDifpw8oTDxMgGhBpwGOLKzu8MU7peSOW/BweFgyMJimc4rUAQT9+TiCiDKC7gwUsBiBezIzoUFGrKr8GnGBgSQDYjg5k3Aq7pFSKTfgoPDwYKDwyGNT6CAZNtx+RuqWYCgAXfklN6jayTo7AEHAIjTnaHLaQtfAAAAAElFTkSuQmCC',
  2051. blank:true,
  2052. };
  2053. engineList.translate[3] = {
  2054. name: '必应词典',
  2055. url: 'http://cn.bing.com/dict/search?q=%s',
  2056. favicon: icon.bing
  2057. };
  2058. engineList.translate[4] = {
  2059. name: 'Forvo发音',
  2060. url: 'https://zh.forvo.com/search/%s',
  2061. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIAAAAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAcdJREFUeJyFkk9rE1EUxX/3pZMJxtCRuim01k03IkKJCI0E9Bu4VgxxpZaKurf+ofEDqHUhFCKKuuwHUCiKBgRL24WloVZd1KIVTFprMQ2d6yKZzEsZ07u6575zzpw7XCGi+gula6AjIIMAKNO+7lz/djM7v5srNugbL10R4X6UaVB/67XUzzunNwNsgubog7k3oB3FAMmk99sbmRxoMxguLp7vTu3LHvCSqGrjRXVKIA3+GaAMEHMSVL7MQCz+tW2FTLGswaC6scXC1aG21QDSjz44S7Oz28ZxQRVFN9cn8imTKZbzNjFKDDBz8Xhd3K4hmgkF2Q9gVBkNafqi0/7r9y7M2dgbfZwzIqRbct8872TQZH1qdTBsVHUnGBjRw3vrORS0AltGkJeW4+09DUTiITBPjHFrZ8NHerJPF3r/p+2+PPnextWJ3Lx5e+5YJRjE410sf/612l8o5XaL+8ZLrxJe7wlVv5lW7zbXaNSpZ8u6uLRK3IkR3hI1EVwrP9t/KtQ21qg+zAtYp7z2/UePLW6sa4sb33VTB1vitgRh1HcfReRI1D9Q1bGVsZMFexZ5dQO3phO+415CGVShDrxeuZGZiuL+A2DYnV2Yre6zAAAAAElFTkSuQmCC',
  2062. blank:true,
  2063. };
  2064. engineList.translate[5] = {
  2065. name: 'CNKI翻译',
  2066. url: 'http://dict.cnki.net/dict_result.aspx?searchword=%s',
  2067. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB3klEQVQ4jaXSMUhqURzH8YuBrSbiIIKIS4vo4ORQgyJCBg5Fuuqgsyh3tKFwUsjFycEIwq0lBMc7RLQFIl4RnLxXzqbe4Yp0v28I6vle+F70h99y4Hw45///S9SO+Ukkasf8XovFgkKhgCzLrFYrdtZXgBCCw8NDbDYbnU7n+4Cu67hcLlKpFEKI7wOPj4/Y7Xaen595eXmhUqmg6/r/AUIIQqEQBwcH5PN5HA4HTqcTVVW37mma9t6fP4GrqyskSfqIx+Oh1+sBsNlseHp6olwuE4lEuLy8/BsYj8fc3NwQCATw+/0Mh0NM0+Tu7o5Go0GhUKBerxMOh4nFYl/3wDAMms0mPp+P+/t7ptMpXq+XYrGIaZqs12vOzs5QFGUbGAwG9Pt9FEUhm80iSRJHR0dMJhNOTk6oVCoAtNttzs/P2Ww2n4CmabjdbhwOB7FYDL/fjyzLCCGwLItSqUQwGKRarbK3t0c6nWa5XH4Cs9mM09NTcrkco9GIWq3G7e0tlmUBMJ1OiUajxONxWq0Wqqry9va2/YXFYvExynQ6zfX1NZlMhvF4/HFuGMbuPdA0jWQySbVaRdd19vf3ubi4YL1e/3uRXl9fyefzJBIJ5vM5AN1ul4eHh/fn7gR+kF/ZQQ/WnEhepgAAAABJRU5ErkJggg==',
  2068. disable:true,
  2069. };
  2070. engineList.translate[6] = {
  2071. name: '汉典',
  2072. url: 'http://www.zdic.net/sousuo/?q=%s',
  2073. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABJElEQVQ4jY2TMWrEMBBFdQYJuU23BsM2gbQBFSl0AEsEs+CzxClETpALpEwbttjGJ9hiwXLh1uf4W81EcpRNBgTfo9HTeDQjlnmCk7q4xrbP1joErEPIfGJsezipsbWPt5eiTo0BJfOqwjJPAAAnNevUorE54Hw6ZoCSzmN2ENFY3jifjlkNurpBNDbTFAcAl/0DRFc3DEhrkeptNgRwUkNQ4H8BTurfAV5V6OoGz4/3nHZXN3BSIxrL+ibgryIWAVQY+r9bOo1nwOvB/6j+Vqc+ryrWwqsdtrbME74+3/l7HUKxkZzUEJf9U+ZMe2Eb7O9UBnJSf/fBMk/cLOntqa1DgJOaZ4NrQJNXSrMEoUszAL01vXc0FusQ+BCNL+1FYzG2Pa51VtKhEx+TOgAAAABJRU5ErkJggg==',
  2074. disable:true,
  2075. };
  2076. engineList.translate[7] = {
  2077. name: '海词',
  2078. url: 'http://dict.cn/%s',
  2079. favicon: "data:image/x-icon;base64,AAABAAEAEBAAAAAAIACAAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAkdJREFUeJx1k81LbVUYxn9n7y1+g3qPWYMosaKyVBp07yDJwFuUUKOoaU0v0SwuTRravHF/QFA0CQoHJTQJvHDR6IMUvXCvYpkfR49Hj573eRrsvY9KtWCxWO96n2e9H89bAZhd2XoVuG08aXvIMna5hWVUnqE9W8uSPl16eXyhMruyddPwre2USyCVJFJ+j9IuLCE5JL2eGX9sO82d//fXS2CXJKmk25nl59ogm7epc+OhQY4ED/d1U+3qpNY44ZuNTb6sQ8MgqSDXRCKrKuXsUyc1br0wzlBPN+XK0pSx4Wt8+OIEn48/Qn80kQJFEBHVrMgHWzzdnQKQVip89fs6PR0d9HZkjA/0MjP6KE+NDPPJaJ0PVneKOgTZlbwSA5BU4KfOwTzvM/H1doPV3Z957YnHeOXJUR7/4wFrkWCJRKF2SK0Qp62g2cptEWWo4vvDJmQd/Lr9F890pvm7gkwReQoSh9Fku37MTqNBblf7LQGqPV1gk2BKXKZoV5TaWZP7h8fsHDWIKPudR/NmtZ+hrk4AlmonSBUkkYWi7Xhu2Nzb56TVYjpt4sSkmJdGhnhn8lkAfly7x0YLrEAuIigJxgb6eHcqd3yPf6/N/Rof3V29UGVOELuSrlkCZ/8Bg3qzyRfLv/HZ+g57RdcK4f1def67Oz9YmpFEn87pcSADhdNpmN0IWqaYC7d1Y3sxU8S8pGkr0gOZ/aI4V7TfnhNdmlKH7fnkl7nrC4rWnEKLCh2EotDFRQesizpZOrC0aOmNP99/a+EfiilTPoj1fYcAAAAASUVORK5CYII=",
  2080. };
  2081. engineList.translate[8] = {
  2082. name: 'DeepL',
  2083. url: 'https://www.deepl.com/translator#zh/en/%s',
  2084. favicon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACNwAAAjcB9wZEwgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAGZSURBVDiNjZKxaxRBFMZ/b2ZHbWITUxkRC4PnBUW0k1gkoFlMYmIR8R+w0UZBFAvtLAMS0ipC0guCd0GOa23EJGTPkBRCSCNHKiEgMzvPwmjCuiv3lft97zff7BuhQraWTouJLwE0mmf518a7spwUPxwZvlmLms8B4wWrLZhHPvuwUg44N9afGPcc4T5gK4pFgSUv/jHrre8HgKHJE4nzHWBgn/sZdBuYqQB1Q+5rbLR2DUBy1J89GIbEmNmQNW8DqxWAgcS5IQBT5vqYP3H1Gw9AHyosAKECVA4QuKfIPMhHVKygV4OVU8ByT4BDsiI6rWpusdbYUdgpBpLSMeGTRLYx2o5q9kT0ja2P3xU401ODQJz1neYdVRkT9C1gyob/Ngg/3VbifJf9TVg1L2Q43UC1eo3eb8KfB7O7uRf7T782Yo8hXBG4DFwvaRgFFoP4GTqt7u/bFuTOp5dU9BUw8u/BOhqy5fZ//4HvNL6ErHlNkSmFb4e9YM1WMV+5xjxrvM+P99VBngI/qnK96UI66OrpEhcnThatXx/tiqJJdDA6AAAAAElFTkSuQmCC",
  2085. disable:true,
  2086. };
  2087. engineList.translate[9] = {
  2088. name: '金山词霸',
  2089. url: 'https://www.iciba.com/word?w=%s',
  2090. favicon: "data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACGElEQVQ4y6WTzUuUURTGf+e87+v3BwxYToupoYVYgViLFiPtIrBNELZsIUIUFEXQqk1I/0JU24oWZRFFiyD7WhhBDWYfq4zCsRETdfwYHL33tHhtdLSF0IEH7r1cnnOe55wjPP1u/EeEYrLuaogpoJi4LREoBhiIQa3Btbb3DLZdQbwQIdSJIC7+8y+IPP5pAKnqEgMdz+lYusGvwm/uVo3Qu7OeOoXsbIkzw9OMLDiQDRLi7CED/gJ7x94R1o2RTF7naFBFz9AEuZLnVKqewcw2Ol/kyS0b601T84AJNbnPMD+BD3ZgzSc5/naKN7OOb4vGpS8FsjMlTqcbMGeYp4wQDyCUabWVeRcwWjS8xc9iytc5T7I6Qpxguq4C8UJMsuqKG6U5WOJgY4B4JTAlckImETAyvYQhiF+DmlfWKA21GdzkVR52tXAuXcuxlognXQn2J2oYmiwhpphfg+IVvJYlGDA+dZvzH4p0p5q43NnCx3ml/9MCDw4laK9VlAi8gFdCMQMzRFb7I5AYVnpeXWTWe+aAtEAARJkDDJ7o497NO5xt7QZzcRsBzMAESq+TRI+2c1iHN0/d/SzLE+Ps3nMEKXhMIMQLSOxs8VkT+rIBdIZNCyKCNTQx3Z6ht5Be9VwIzeIW/pAUxVwEDsz9dWMDQeMu+hb3kfflwhFu5S0+RIiyaVQrwhtmKxXUsQTAWMH8VvavMsMfIrbvQBU3VlgAAAAASUVORK5CYII=",
  2091. blank:true,
  2092. };
  2093.  
  2094. //知识列表
  2095. engineList.knowledge = [];
  2096. engineList.knowledge[0] = {
  2097. name: '知乎',
  2098. url: 'http://www.zhihu.com/search?q=%s',
  2099. favicon: "data:image/svg+xml,%3Csvg t='1666873123741' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='15646' width='32' height='32'%3E%3Cpath d='M539.101 769.844l-76.117 48.43-96.094-151.063c-19.842 63.221-52.85 120.174-96.455 172.482-18.128 21.78-36.977 41.396-58.667 62.004-6.99 6.629-34.947 32.332-39.592 36.976l-63.762-63.762c6.268-6.268 35.489-33.143 41.26-38.6 19.391-18.398 35.85-35.623 51.497-54.382 57.089-68.452 91.54-144.75 96.365-235.884H117.749V455.86h180.373V275.485h-39.14c-31.07 57.089-70.256 100.198-118.055 128.832l-46.356-77.29c62.905-37.788 109.351-117.423 136.993-241.7l88.023 19.57c-6.313 28.544-13.664 55.33-22.051 80.402h203.506v90.186H388.31V455.86h112.733v90.186h-104.39l142.45 223.799z m173.068-3.157l50.325-40.268h76.749V275.485H658.869V726.42h33.189l20.111 40.268zM568.682 185.3H929.43v631.307H794.15l-112.733 90.186-45.094-90.186h-67.64V185.299z' fill='%230E87EA' p-id='15647'%3E%3C/path%3E%3C/svg%3E",
  2100. };
  2101. engineList.knowledge[1] = {
  2102. name: '维基',
  2103. url: 'http://zh.wikipedia.org/wiki/%s',
  2104. favicon: 'data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACKklEQVR4nM2Xva3yMBSG3xPdBai8Ah0WS1iUiCYbeINITBAWyApImSAjuKOgSUYwFRv43ILryCR2IN8VN58lGr/E5zm/TgiR5Zzj2P5vV5ZlNNzrNz5l9BVMtoTx0Gb214aHa3EAWiL84Vo8AosDfAHAbrfD7XaDEAKr1aoXu64DAFwuF2y326R+PB5RluWTfr/fsdlscDqdRs92XYf1eo3z+fxoB/8rioIBMBExEbG1lkO9rmsWQvR6qDnnWErJRMRVVY20siyZiFgp9bT/BGCt5TzPkwZCSAAjzT87BA/h27ZNA3gIb6BpmiiEBxx6CoDruh7931rLSik2xoy0EYBzjoUQDICllFEAKSUDYCFE760xhpVSUe+bpolGLAlQVVXv5TBnzjlu27aHFEKwMSaZMh+xPM/fB7DW9l6myLXWPWSe5yyEmASIpSYJ4L1MdUOYcyKKFlcYzVhXvAQIi01rPamHtRCrp5T2EsD3NRFxWZaTaYgVrFJqMjUvAZqmYSJKdoQ3npobAJLRewvA5zBWjMaY/nCvh1Fq2zZZ+bMAvKfDIRP2fJgGX4xa62RhzgYY9rxS6iklfg54CD/33zn7LYBw/vvDw2hYa0cFmZqi/wQwvKRid0R4h0gpJ1tvNsAwzFO1krqOfw3g3KPai6JI6v4OmXPm15zXp6IosN/vk/rhcMD1ep1z5OPL6Me7P19ZltHiL6X/B0Dsq/Xjhn9sRg1/qiZijn4DhUA2yPD/DEEAAAAASUVORK5CYII=',
  2105. };
  2106. engineList.knowledge[2] = {
  2107. name: '百度百科',
  2108. url: 'http://baike.baidu.com/search/word?pic=1&sug=1&word=%s',
  2109. favicon: icon.baidu,
  2110. disable:true,
  2111. };
  2112. engineList.knowledge[3] = {
  2113. name: '百度文库',
  2114. url: 'http://wenku.baidu.com/search?word=%s&ie=utf-8',
  2115. favicon: icon.baidu,
  2116. };
  2117. engineList.knowledge[4] = {
  2118. name: '豆丁文档',
  2119. url: 'http://www.docin.com/search.do?searchcat=2&searchType_banner=p&nkey=%s',
  2120. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACsklEQVQ4jZ3SWUgTcBwH8H+QeDCpLUXR2vKGyZzHFuq8ErMi1PBK01LSBKdplgeYCPWQZWFgGV2GQhbpQ4XNSs3l0XRTZ+pm6hRiTtnmXOKZZfv2EstSevD3/P18H778CNnmOfmYHSSE7NquJylVjq1O3pTQbWH3Y7YpZcNBhn1uFpz/5SzNdhOGOZXQTa2Ji60XJdgr3ibndBWjtXKSi7Ju33lCCHWTsnY28Uoud3tyo5Oruv/Jb/VO/4Hlsj7Pn8VSD5SM+KB83Ae3J5lIr2Z2bcLc41YZtYrAtc7FaPTqz6JPx4dkNg3CmRjUjnFRKHZFUgcb2SNchJ13ufUXZvJMj76a8YfmRwOWvg9ANlcE2VwhZPqLGNJloXM6ETWjQeB3s5Eg9Qcz1D5uozcpf+0+Il6IhELfhKn5z5BqL6BPm4ZeTSrE6kQIp6LwXBGJq4P+yO7mGWh0mrtRO3ma8xpVAeiYiYZcVwOFXoCB2TyoV5qhXHwG3eoHKBcFqFdE4NqwF3JbuF8pFIq1sSD0BDWzeS4EzcrD0K/JAAASdS4AYG19HdolFQCgS12BkgF7ZApYGkIIzVgQdoqW16jh4eUkD+plMdYNK2hTpQIAZLoGNCjifxfcQ26PHfhNbL2lJbH6M2CgRVTtBAvVI87QrkoAAIIvcQCAIV0d6sajAABC1SOc6WCAX++tIITs3Dgi7fJbx/kK+V50Td+FfFaIx6MHMarrxouJK7gpDYdcK8HDwUvg97ERUeBSuekHAk7uKbo+xkKByAH5H+koFrsgt8sBWe1uyGhlIaHRFSltbOQLgxaodub0rV53R2yp3dNSOReZIi5S33OQ9I6D2CYOYgTeSBP5oUh06Jt7kE3kVth4wcmMgrw3Icr8/iPI6Q9HVk8gzrUHGNIfhLTs97Dx/Tf/C0aUi3kge/guAAAAAElFTkSuQmCC',
  2121. disable:true,
  2122. };
  2123. engineList.knowledge[5] = {
  2124. name: '爱问知识',
  2125. url: 'http://iask.sina.com.cn/search?searchWord=%s',
  2126. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACRElEQVQ4jY2SzUvTcRzHv5dunjqEHWJrzqVGPqxLeUkR/4PPd79Nk/QgFV6GWmhRoCAooWaSumUpiVD0DBVIUkqkl/UA5W/zYU0z0HBqkaZzk1d/gM56nz+f1+X1UmqXuYwKXFKCFhdaG7g9Hna727Hs7Gyn6DKczsbA7T4z9mzoY/jp8MRcXcODgEjVvyEilRQXt5Nmuc6pwkG6+r/iG1ikoPgRx080BUXOJoeIlGM/VB8+mt6J2rcfW0YP+YUvOFn0kvyCYWw2PwcPFvm0W3aHiFSSmV6NRwz+RHrxiMbiuIXD8RBLVhei3YgW3JIMoDWlWlgPPyFu3mBj1o/WgiEajwi/pvtILNxLDnBpIRr2EzebYLIDgq2shduJB30Q7gSzjVioA3ElARjiIREdgm8DEGwmMeljfbaD7Zl2CHYRMx9DdBwxkii1plqthgjxpS/E5rrhczeEOtkONcNEB6yEcGsh1Wq1JjWhlEoREe70XBr4NP586udyID4RGJzq7akb0FqjlErZ61kppZTdbs9yiUaLUCpChQjiLvm/EpVSSotws3WY2JEstmzHiOTk4a/xzYih94ZUVXm92lVOS0v/+shohLHRIAlbLuNvTMbemjRcu78ucm6vEktpbevn9Yi5NT2zycz3BVbTclic/0FkbpOh0RCNV+9GzkgSC2II7z68Z2p+kd8J2EhzQmYqK/ZcVteWmV2aZuKViXiSpix4vV5qay9QerqMhQOO6ELe4e1ZS0b04pVaLtecp766bkdIfwF25n38sMbXHQAAAABJRU5ErkJggg==',
  2127. disable:true,
  2128. };
  2129. engineList.knowledge[6] = {
  2130. name: '萌娘百科',
  2131. url: 'https://zh.moegirl.org/%s',
  2132. favicon: "data:image/x-icon;base64,AAABAAEAEBAAAAAAIABPAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAhZJREFUeJyN011ozXEcx/HXOc7mnON4mM0Wo7V5ahJtaTIkuSFFQnGjFrmRxIVy48KN5E7K0412Qx7WmodyQexCuSCxhRUlDzPLtrOj7cw5/n8XkzO2C5+736fv99Pv/ft9v/yr96bJSo7zIZQUioy1ouOKHjrpjjNCVX/57Za4oA9Txtqjabdt9kmdOrPVapKS8EOvK54KTDGEwByBapN1KJKS0m6XphjIalSsQajYiIRhxJWq1eexNnERk5yU1CLpnk++KvVtIsZlQve1uSV0aIwf0eyzZ3boVDIeYbQoqsU6GbMt0q7RR6026LdZaL6MTfKKRFHqgfW2mWdw9BGfWOiSTl+0yTvsuddarTRsqX4HRQ2qttERszSql7HMA9sKv9BlldB0m9TYq0G5i3qcFsgoMijmvrQZ7qrS4LmELgMmQ+w3QKWoPl1KVEuLa5HVpNiAwEzDDhuSMCjw3UZDipQJCwF94kK1XnmjV6cae+SFKuSkZe1TJyIAB3BepYieAkKAEjftNNVua/SbKSnvqx6BuHNuOOeqy84aUCanXEJ3ISAuLy9lru9iBqStENNhuVCIGV6a6q2cXt0q5MTU+lJAWOqRF4676pScb9KOqbTfW91CzHfdSh2g1WrF8hb7XLjBWu0qbJWxwIj1KhyyxTXbf6/OuzHLlTVH1AcRP8dP4kRqdtQT5X/Od9S77sT/Nf+HfgGu7K8KC1PzBgAAAABJRU5ErkJggg==",
  2133. blank:true,
  2134. };
  2135. engineList.knowledge[7] = {
  2136. name: '知乎(搜狗)',
  2137. url: 'http://zhihu.sogou.com/zhihu?ie=utf8&query=%s',
  2138. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACk0lEQVQ4jY2SS0hUcRTGzyLcRI9Nm8BlbaqFm9xFi+hhm9EgrVZBUETOI3VsUGeiN/RGAqFyGmcRFCFUFJRFWCs1k3LunZnGbOb+73W0ssfo3HEG+7W4E4iBtPjg4xz48Z2PI7J+Z4Psj/ZJ/Z0+qQ//v/ZH+2TX+YjIvmi/nJtBQhNIu4UETMcHraUVyiKnvyPSEHkhQQtpjlN5JkXrw0mkSUcaNcSjI81xxKc7fqFaEkjQRKQ+3CdBC3FrnHv2hUS2wPauDDXditqoSeXZMTZeGWd3WOHqMXH1mGy7abD6ZAppM8qADotlLXGG0nmGzQL54jyTv0oMpPPsDRv0j82ifpR4a9iMKBuAmrCJNKfLgFbFnogipmwqWuI8iuXwPMgiR2KIT2fEtKmNmMjRGOLVGVY2e6LWAkC7SfW1cdaeSiGHPvAiOcPBuxZyaBRx67xTNq4e0+nleJy3yqZuMWBV6CM7bitc3QptskDn62lqbxlUXR5nIJOnLmoibg1pijP8D+CEwhU2GMjYDBo2dvE3+tQcA2mbM8+/8ObTLLU9SwGCFuJPIG6NFW1JdNNmw6Vx5PAo4nVOWDpB0EJaE4hHZ8uNDKXiPPeGfrI8kETcGu+UTU1YOSUe1RjM5BeV+Bfg1rg//JMnsRxPYzl63/+iwqujT87R9HiKNYEErrBiKldyEjQtBDRq7L5lAFDdmWZlIMn7TJ7N1z9z8eU3coV5UtkCI2aBV6lZqq6nEX+mDAiYbOlM8yNXorN/2nldn866C2NUnk0hxzQuvvyKpzfr7LzlV+5QiByI9kvHBJuufmZrl+Es/AnkRBJpXuD9CcQXR/xJpLWsUBaRXecjcnoaCRhOpHbDIS/W4nkoi7TEi38AwHibcZoJerYAAAAASUVORK5CYII=',
  2139. disable:true,
  2140. };
  2141. engineList.knowledge[8] = {
  2142. name: 'Quora',
  2143. url: 'https://www.quora.com/search?q=%s',
  2144. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADQUlEQVR4nO2WXYhUZRjHf8+ZzS0Jw9oUtMSa2V0TI1MJwqiETSzNWnFnxkzpoi5CSqKLCIwGL2Shqz4uFvoAtZCZYEet9GI1Ay+EDRQ1ktWZvNiIVNA+2V3dc/5eNDvunPPOeLS9Uv9X5zw8z/P/vec9vM8Lt3Szy+Im7kkx5W+PTnyWCRYYTBc0A2cMymb0kaCYHmBgQgEKj3OHzvGOxJvA1Ks0k6A4yWPTqlOc+N8AhRRzJfKCedUC4yjGF+bxEz5DwMxALDfjZYmmStMhYGOmzKfXDVBIMVdwUOLuarLHxzaft9Jf40fykywMoI9xX8kz3k2X6L5mgN453HNplKMSM8eFD2ZKPGWGGkCvDMSuGgOPlzKn2FGvxnMFL15iS8gcS7C5kTlAusRujCM1QfHhtw/X/3ciAMUUSYPXQuEL9ggHGplXQY1ijb+4959h3o4NcBEyim7NYde+OwECfowExZrYAIhnHXnlOOYVlRw9Hyy00x4PAGaFAwZ/xLY3/nSF5TM7HoAxPVJsDMf1b064c6VoXzeAOB9lojkuwIiY4oqbcSYegDHogLorLgDelYNrvG5r4rQr3hT14nvgsRBUcuwx38ZzCnjFoBW4U/ALRq/Xwrb0IYYsYFrExRjszFIi5+INEyWip5bgUeXwdrUzA5/diC6J+RIpxFICenSW/uIcZgcBixwmn1mOwPUFIgCrBzgG9IYIWgpf8cQLA/wmjw0Y3Ubt2BXMGxllD2JpzeKNc02T6XGZQ51ZsDPJ/SNwXFzZe4N9mTLPjL0feJrbz/7KdonVDZrLS7C86yR76+U4Z8GLZQa9BM9XxioAgo58im7l/qtZ8gPD0+5jHXCsjrlvxoZG5pW8+sq38qTEDsSMaoHRr8p9wIy/NMoKiS2Oxp2ZMjurC8jh8T4KD7Sr3oi+aaPlX58Pxl84Ysn4PFviVYB8Gx3y6QP2Z8t0XBPAmArtPCCf9cAyYIHEpEqD34GfMRZLtQeWwXdm9AewHpE0+ChTZuN1AYQ1NuNXHOcCQL6V9xSwuWGRsTBb4vCEAIRV6CKhI2yVWFvH/JNsiTei4QmUcnj5L1lj4nWMhxAJjBN49GROsnUivW7pxtFlNM8U1KJDSwUAAAAASUVORK5CYII=',
  2145. };
  2146. engineList.knowledge[9] = {
  2147. name: 'stackoverflow',
  2148. url: 'https://stackoverflow.com/search?q=%s',
  2149. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACRklEQVR4nM3XXWjPURzH8dcfUVsekjuhZVa0mI3kIeUhzcMFkvJ0sSgXLpCSkljZhRQXKLlAUliJkodSyhXSPJQ8jF14KuXG04rR/i7Omf2a/2y/bf/9fet0zu90Ht7nez7fc84vk81mFdIGFHR2DOqqQXPthLxMXLz3Jf4DD/Q1wDTcRXkhAIbjJmbgEkb0N8BnbEIWpTiHgfkGGIhJie+L2B/L1ajLN8ARPMDmRN0+XI3lnVidL4BxWIEhOI4zKEIr1uEFMjiFyfkAeI2puB2/N+AeygQ9LI95ES5jVF8DwAcsxAFBfOW4j1V4HqGyKNGJKHsCsBbLEn1/YRdW4hOGoR6HcEPQhAh6sLcAw3EUV9CIbbGO4ObpeCTs/XbcwknhXPgmeKVXAKPxJJbH4zDeRqgyvMJMnI5t5qBBEGkFTvQW4CnmoipO8gNDsUVY3XXMw8aYvqMl9mvKNWBPRfgANRiDPXgvuL0a1/BMUP8iLMa7zgZKA7BEiO+J2tX8UTj5SrBGuIgI23EEs7VvWU7r8j2QsB2YH8vNeIyHgjceCsfweeFG3IoFONbVoGkAfuKLEGbFmBVTm7UIq23AHdTia48ATp2t/1NOHOTVwpaVCidgZcyrMBKDY11lbL9UiIr0ANHaXquZRF2rEP+NuJCoHxtBKmI+RdRD/fi6LKxu2p0cp1sAaexNTJfSdkwDkPb9nnPFHa3gj9I0HujWitJawT2QyfVrFsOwr//ZMjXr/36dFdwD/9JAXva8oxXcAzk10J/2Gw08e05AgXJ5AAAAAElFTkSuQmCC',
  2150. };
  2151.  
  2152. //社交列表
  2153. engineList.sociality = [];
  2154.  
  2155. engineList.sociality[0] = {
  2156. name: '百度贴吧',
  2157. url: 'http://tieba.baidu.com/f?kw=%s&ie=utf-8',
  2158. favicon: icon.baidu,
  2159. blank:true,
  2160. };
  2161. engineList.sociality[1] = {
  2162. name: '新浪微博',
  2163. url: 'https://s.weibo.com/weibo?q=%s',
  2164. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpElEQVQ4jb2SXUiTcRTGH9CZNmeyvXO+2163tSWaFWmsMmtpSpC1EBNDJaiky0AEL6S0D4pKHVFpXmTaB5FdtIuEqBslBCMqKyNDUFKpLQ2rOb9y/s/pIlYUeBFBz+U55wfnBw/wHxO7zowNa4zIAKD6a3pPOkpG6zA+WoeJ50fwJi8VOxc91gLKzpjYwjUq1cbwLA7QbluJHVuSkespxsWpywi5HNj+JxtToZWOv7As980kp3G/1T4pAXJ42VCCpp5q9KZbkHmhFC091ej7JQgk3JLND4LJK3nckcJ+Rwr3W+yTOUuW5rvV6pIqrXRib6L6QI0bp7uq8NRlx7aRs/gc5uO9RqU76EjlUZOF3+llGjGYaECSZ/t0CV8+KTaeSU7jLr190GWM3N68H9d2rEaB34PZH6/pE9umbCt42GBmX3YezRytJXH9JoVaWjlQWcUfMjfzmKzwsySrzwDYAGCtAmdDEZqRGR2d609azr6UVRy40kJibo7eDg/Tw+5uGvT5SAhB8z4/TVRW0ZCshO4ZlccZkdFbfro36PVtAesKnrrrZSEEnfF4CAABIJ1OR16vl4QQtDA/Tx93FfC02cbdim1IA0gAgDvx0qPpfDcLIehJby9pNBoqKioit9tNKpWKnE4nCSFICEHjhyvIn2DkfqtjMqyCGrXG8y07j5mYOzo7aavLRYFAgLKysggAHSwvJyEEhfx+8m1y8YzFwU16QzuAiHBpzA+khFd88hQvBINcW1/P63NyOE6WqXDfPhqbnubQ4BB/LS7loMnC90yWHgkw/tYeCZDr1eqW97sLJ7ntBr++1MgDV1uZO+4zHzvBX9Od/FJv8FfrpHMA4hetsAVILYuIOOSREi+3GpX2xrhlt2tUMed3R0WVGYGkRcF/yXdyajYEKzT4iQAAAABJRU5ErkJggg==',
  2165. };
  2166. engineList.sociality[2] = {
  2167. name: '豆瓣',
  2168. url: 'http://www.douban.com/search?source=suggest&q=%s',
  2169. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACOElEQVQ4jZXST0jTYRjA8UfQNd2w3DqERIQQBmFQNPFgHVwI2SHokKTQpaB/RJvZ/JPLhWWkCcq2lCIhFILyEHaoYEr9LE1/bXMzqYOYTmeUOT2olWjfDjYV+qcvfC4vL194eR6R7Zqjkqf3SK5ubfL0HslJuCeSr1ekciNSmoAUa1bPvh6pMCJyRNcmJVqqntehjvhXLa02EynSIpKr80iJlmrFSceHLtoHlP/qGfGxs3ZvNKD3yGUDYtWw5XoaJqeZzPoD7Gs4+JsMdzYmZxYxxQakUIfYjdFAEnI+lpa+VgCmv88QmZ1k6uvUkonZSaIn3WVGLLGI3bAiYInjYfARAObbh0i+ksLmyh1Lkh1bud/bAoDJmYVY4v4e2HQ1FTkhyNkVjgt1L+v/FYil9d1TANydd6hsu0mN4qZGcVGjuHA8u4Z3tBeADHf2H75QoKX0iYPP0+MADEaGCX7sp//TewJjb/k2PwdAz4iP1KrdSIF2ZcCAFCUhZwTr40sAHG46hpyLQQr1iC0R/1gfEzMREsqSEeu6xffLASNSEI+cFrZV72F+YZ5GtRk5JchJIeXGLhZ+LNDse7B4Z4lFLiZGx7i4SLe67qKGvPSO9S2NSw15UYd7GIqEABif/oI6rKKO+jG5zIhNsxxoeN2ILxzgzaif9oEOXgx24gsH8IWDdIe8tA8ovBrqxhcO4gsHSHft/xXI1ytSbkQuxCNWzerZEhGHEZEcXZNUGBF7ElK2BuUGxLZh7icJ8DyZ0CDAawAAAABJRU5ErkJggg==',
  2170. };
  2171. engineList.sociality[3] = {
  2172. name: 'Twitter',
  2173. url: 'https://twitter.com/search/%s',
  2174. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABR0lEQVQ4jWNgGEyAH5e4bXhCgX1ibqOVb2gCklpU9ealvRuRFMCBau3cCwxTzvxnmHbhP8PEk//1yyfvl6xb9sDGLywJRaFh/+ZTDBNP/rfOrZ8PM11VW9uAYcnj/wxr3iHwwvv/eZfc/mxkZeeEYoBvdnkdw5p3/xnm3PjP37TunXVu/XyH3LopKJqhODCrtIKBgYEHxQCDliVH4YpWvvrPMOfGf4aZVzA0M6x595+Xl1cEI6RcfIPDeFc8/oxNAzLWWHjuNq5Y4PFvmT6fkCH++dWNuAxgcPAJCteYc+Y2PttFRUUlcBrAwMDA7x4UEWUzbcchbJotbW3tcWq0zq2fz1+38h1D597/DPNvo2h2nrBmG1QzMy4DmNXU1DR8I2IT/FtnLYThkPKWTs+g0HA1NTUNfJqRAY+kpKQ8DEP9y06MxoEDAKUW4Kpi1NnUAAAAAElFTkSuQmCC',
  2175. };
  2176. engineList.sociality[4] = {
  2177. name: 'Facebook',
  2178. url: 'https://www.facebook.com/search/results.php?q=%s',
  2179. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAl0lEQVQ4jWNgoAbQtE48bOXX9J8UrGmdeBhugEvs7P8eSYtJwi6xs//DDcCnMCx31f9j5x79//X7z//3H7//v3H3NVyOKAP2n7j3Hx2QZMDXbz///////39+3RK4/0kyAAZcYmdhyOE1ABd4/PwjZQYsWXecOANg/oUBGN8hYhJ5YYBNbjgZYOJRdZhUA8w9a48QmVfxAwATIfnUl6gLIAAAAABJRU5ErkJggg==',
  2180. };
  2181. engineList.sociality[5] = {
  2182. name: '微信搜索',
  2183. url: 'http://weixin.sogou.com/weixin?ie=utf8&type=2&query=%s',
  2184. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAF9ElEQVR4nL2XS2xdZxHHfzPn3CfXjxvHiWMntZvEaZ2mjWs1VIqqREjUooIFD4UdEiwrEAvEplIKK1iCQEKAoBDRVS3EIiJQkvRFUiTciCRYSWOH0NRNr4nt2r5++9xzvmFxjq+vH0mchjJXcxfffOeb/zw1I98dOkwNtQPHgF6gE2gF0jwYBUAJGALOAH3A8LLQr7n4LPBDoAfQB1RaS2mgI+HPEht4PAFTVdQLnACeWq3cMByGAwzBR0klEocRAXY/YBT4dKKrF2IPtAM/IHZ3jWqHT4566aSJg+RkGxm2oKRYZJyAMpN2lUm7whITCALIZoG0JjoHfYxjCD21Nnuk2C7PsEs+R1EeI0Xdho9HssSs3eRDe41b9ipLTCKbj14PxjHfsF5s+SsjQxOd+jV26XP45GtCsJ4UnwbZR73spdkOcdX9nLINbRaEAr1KnO2AkaaRx73v8LB+GY8siEMERNZbLyLxucQ50CyH6NYXaJSuOwLegDqVJPaCslu/Sos8gxErHiu9z7mTLzP4j/OYrTwqIpTeG+Tcyd9xY6AfzDAiGqST/fo8WZrYZHK2KkbaLKKRLh7SL1Qlzjn+ef5VLr71R945+wfmp8tVT0RhyKW/nuLiW6foP/175menERGMiCbppk2excxiDHfntBqGAdv0MBmKVeQiSnFbK/lCPVtbO0hlslWbVJXmto5E1k4qncESoaC06FF8Cjgi7B4/HzM8ydDII2u8Yzx+uJedex6jUGwincuzokXoPvJ52h/tpq7YTCqTAwxfwVfHDmmnTZ5gNLrCopshshBBk1JdTb5heJYlLY3r4uan0mx7aE8cY9tAtnMPglGXNhqyQj4FvoInBdrdC8y5Cf4TXOfawjn+tfB3AptfVyE+Bk4iHBU2qnVzG2e0AVnPsaMg1GcUT1bOAQpekYK3hZZ0J/vzn+HGYj9vTP2akeA6WgNCDQhtnnkrbajoTsrzPnQ0KsWsoAKiiqjW3DEQQxRSmqErd5QvNb1IW7prVW4oBs4qjEcXk95+b/IV2uqEvB+DcVHE5UsXGbx2tRoqEWFqcpK/vX2OiY/GMXHsyOyjt/gtCrq1WiUa14AwEp1n0l1D8O5pfTEr1GUEI66IkZESv/3VL3j5xEuUy1NJgxLefP0sv/zZT3nzjddABGcRHdlu9ueP4iz2gpoZZrBgo1yrvMSSfXTXVqpAXdqq2WJm1Nc3cPDJHrr2HyCbzS4LeHj3Hp44+CTt7R3VClLx2Jt7Gl8ymBny7YGnbDlmAuzyn+NA6nmyspWNupmKY+8WKKT8qlRECMMQEUF1NfgwDPH9lbFDUMYqN/lN6ZvMRGPLHojjYQbvV05xOfgRoc0hyB3rd1VYzPA8b51yYJXyZXIWxSEw8NfWt+EQUviSo2LzzNowGdlCRhpQ0ph5VCIjmUvum0SE6XCUxWgWLGlEqy7g06w93A77uV7pYyIaICNF8tpCXloAoTy3jyPZr9zTMxuRmXFj/h0Ct4CIrveAoLwXnGTa3SSwMiIeS65MOfp34iHj9lQTO3MddH7qaZxtrnQhTsAPFq5weeZ0kpNJH6hlZwHj4WUCm4lL0mJYgofgofjMhBP8aezH3Fp8F5W7l22tYePBMH8e+wkTwYex9wzUnLGaAVNwsF4Ws5hya+FdXim9yMD0WSKroOKtSdg4gVU8VDzGg2H6Rr7P9bl+xLT6lm9mAR9j9heUkcUhXil9j0cKh+kqHGFX7gB1fhO+pIgsZDacoByO0pKJh66JoJQML9WwB76ZlYhn9vsmQVmM5rhU/gsD069T8Io0pLaT1hyhCyiHt5mPpmnLPsqhxi+yPb2byaCEriRvyTezoY8LoBZIZCFlN8pU5TYk7X15VL8xd4EP5q/gawpMaj0w5DtzZ4g3lv/RNrSyH1j1XwhskcAtJicG4IAzitFnZheWO+L/kS9g9PlmNmzYcYwTrNmOPkEqIRwHhjVpRGcM+0biCfcJWu3MrN+wrwNnzCzZjuNgnTazQdas54Y90HouyLr1XESGl/PwvyqcdNFgnYiiAAAAAElFTkSuQmCC',
  2185. };
  2186.  
  2187.  
  2188. // 学术搜索列表
  2189. engineList.scholar = [];
  2190.  
  2191. engineList.scholar[0] = {
  2192. name: '谷歌学术',
  2193. url: 'https://scholar.google.com/scholar?hl=zh-CN&q=%s',
  2194. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACqklEQVQ4jYWT2UtUURzHL/QH1LMP9hKVNUKFWpP7TDrjU9uEo4WPWlERUbSoueSMaTWjTBCRGV3HiCsSWrTQApVSZBtZWEZSUWZkC3PPne3OzKeHK1NKy4Hfyzl8P+d3vt/fkSRJmpWSVbU9vbxbMZXJSnqZrMx3yErqmrN/r7V+Zf76jjNz5mYXSilZldtKfGBrA5sXcg7Dpg5wX/lzNV+FlmuwsRNy6r9HJFO5v9feBlaXILNWxenT+Pgtzr/W2Oc4azwalqMgLXZ29di9JMXj/xH3P4pybjDKhvYg1qMgpZfKyko3lPk0xr9PF7/4EOfTjwQAiQRcfqpjrlMZeBVjc2eI/FaQ5jlkZWs3qKHENPH7yTg5DYKKExp6DGJxcLRprHILAJr7w5hdIC1wyMquHmNj3/kQN57rALz9Eie/SZBRo/JwLAZAtRLC4jIA7r4pQHqprBS0QkaNysLdAXbKIQAiOjh9Gml7VOS7kaSooGkGwFQqKzYvWFyCgiZBbqPg3mvjRv9ABNPeANeHdSbVBOu8GvYWA9ByMcyKmQCLS5DToFLSKlDuR/kmEox+Moyt6w2TtidAUbPgyKUwZceDWI7MAFhdRgdL9quk7ghw8bGeNPXdZJzKjiCZNSpZtSp5jQKb9zeA1SUw16ms9WqcvBlhcDTG4KsYoxO/ohXhBFWng5jrVCwuQbHnN0B2vaDiRJCJqdzvvtRZfUyQ3SA4dSuCbtjC0JsY5npBYRLg9PfaPEYK14f15NA4fRpLD6jkHxKY9ga4PWKcvRyPk9toGF7sBWmR45S/pN0Y5a6BaLLdroEoGTUqy6oNc99NGk85dCHM8oMCqzuIvQ2k2XPzLAWNX9UiD9i90D0EE8Yo8GQc/A/g2QSMfIHaPsg9DMUe4/dmbrnz8CdxKwtDTtdexQAAAABJRU5ErkJggg==',
  2195. };
  2196. engineList.scholar[1] = {
  2197. name: '百度学术',
  2198. url: 'http://xueshu.baidu.com/s?wd=%s',
  2199. favicon: icon.baidu,
  2200. };
  2201. engineList.scholar[2] = {
  2202. name: '知网',
  2203. url: 'https://kns.cnki.net/kns8/defaultresult/index?code=SCDB&kw=%s',
  2204. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB3klEQVQ4jaXSMUhqURzH8YuBrSbiIIKIS4vo4ORQgyJCBg5Fuuqgsyh3tKFwUsjFycEIwq0lBMc7RLQFIl4RnLxXzqbe4Yp0v28I6vle+F70h99y4Hw45///S9SO+Ukkasf8XovFgkKhgCzLrFYrdtZXgBCCw8NDbDYbnU7n+4Cu67hcLlKpFEKI7wOPj4/Y7Xaen595eXmhUqmg6/r/AUIIQqEQBwcH5PN5HA4HTqcTVVW37mma9t6fP4GrqyskSfqIx+Oh1+sBsNlseHp6olwuE4lEuLy8/BsYj8fc3NwQCATw+/0Mh0NM0+Tu7o5Go0GhUKBerxMOh4nFYl/3wDAMms0mPp+P+/t7ptMpXq+XYrGIaZqs12vOzs5QFGUbGAwG9Pt9FEUhm80iSRJHR0dMJhNOTk6oVCoAtNttzs/P2Ww2n4CmabjdbhwOB7FYDL/fjyzLCCGwLItSqUQwGKRarbK3t0c6nWa5XH4Cs9mM09NTcrkco9GIWq3G7e0tlmUBMJ1OiUajxONxWq0Wqqry9va2/YXFYvExynQ6zfX1NZlMhvF4/HFuGMbuPdA0jWQySbVaRdd19vf3ubi4YL1e/3uRXl9fyefzJBIJ5vM5AN1ul4eHh/fn7gR+kF/ZQQ/WnEhepgAAAABJRU5ErkJggg==',
  2205. };
  2206. engineList.scholar[3] = {
  2207. name: '万方',
  2208. url: 'http://s.g.wanfangdata.com.cn/Paper.aspx?q=%s',
  2209. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABJ0lEQVQ4jdWSvY4BURhAPwoS8TuTqESC3lN4DZGYVqGTaPQa4g1UYjqxdN5EoURI/CQ0M9/ZYnYya9fsRrHFFqe5Jzm5936ftEXatog9EZm+ii1iy1xkQbUKlgXNpodlQb0O8TjUao/O940GJJPIRGRKr4fCd0wTXa2eO4BK5SPQ6XiHqh6Ans+oYaCz2aPz/e0GpdJfBk4nL7BcPn+C60K5/MsNTBMdj9HDAd1uA3Y7dLOBYvGHwPWKFgqoSCiI/BC4XNB8HrUsdDRCB4OA4RDt98EwwgOcz2guFzpG/sEYXwp0uziuq59x73d1DEOdxUK/Osd11XUcDfag1UKPx2DO+z2s194nhuwB/h7MRd6IxSCbhXTaI5OBVAoiEUgkHp1PKgXRKO8NfBp7UCxd2QAAAABJRU5ErkJggg==',
  2210. };
  2211. engineList.scholar[4] = {
  2212. name: 'EBSCO',
  2213. url: 'http://web.b.ebscohost.com/ehost/results?sid=8e76c941-084d-4b93-b05a-d5f182196017%40sessionmgr102&vid=1&hid=128&bquery=%s',
  2214. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJ0lEQVQ4jZWT3UtTYRzHT+w4pzddeRFdBAbd1Z8giXtJz9mKvBDCxMqkrK57u6kEyx13zjHWIl8TEbMptaLpZMeMCgdBS8dSRC8WWAS9UJRS1j5d7AWnjuqB78UPHj58n+f7+wpFLp0il45Z1hBs7nVS0krPdoXM/YyEIpdOgaRSWt/JGZ9BvWeUOiXIUXWMxvZxGrQQTd4wTd4wrkv3sDh1LOsBYpVKaX0XPaEYmfPx6wqHlSAHLt/nlDdMZO4tyWSSHXUdmKrUXECxS0eUVIS9V3kYWQTAiCYQKlpT1itaESs9BKYWqHU/QrApuYDsYFMYnJwF4PH0G0RJxeLUKJQ1BKubbYdusvNIF2ZZzQOwKww9mcsCTJKKKKmU1PgoPzvElkoPBZK68RM3AxjRRMp++TWO6yFGns3nT2EzwIcvyzyILBB+mWD1128GJl7nvP2vgOjie6zn/Ow77+d5fInhp/P/BzCiCQSrG6GsBfsFP/1GHMHRhsX5j4BMCoWyxtaD19l1rBuzrGGWVYr3t+cH3Jmc2xijU8NU5UFwKFwZmGLPyb7sMmUBZllDKGvhbtrBxKv0ItmVlMpaqG4O8O7TN7bX3kKU1gDMskZJjY/G9nG+r/wEYPnHKg1aCMfFYaqbA6gjLwCYX/pMYdpVFmCq9LD7xG36jTg9oRgdwWm6x2L0heN0js7QOx5jcHKW3lCM0zcMxPVdyKmzdY3SFc6ptKMtJ4U/fkBXz/LD6BYAAAAASUVORK5CYII=',
  2215. };
  2216. engineList.scholar[5] = {
  2217. name: 'WOS',
  2218. url: 'http://apps.webofknowledge.com/UA_GeneralSearch.do?fieldCount=3&action=search&product=UA&search_mode=GeneralSearch&max_field_count=25&max_field_notice=Notice%3A+You+cannot+add+another+field.&input_invalid_notice=Search+Error%3A+Please+enter+a+search+term.&input_invalid_notice_limits=+%3Cbr%2F%3ENote%3A+Fields+displayed+in+scrolling+boxes+must+be+combined+with+at+least+one+other+search+field.&sa_img_alt=Select+terms+from+the+index&value(input1)=%s&value%28select1%29=TI&value%28hidInput1%29=initVoid&value%28hidShowIcon1%29=0&value%28bool_1_2%29=AND&value%28input2%29=&value%28select2%29=AU&value%28hidInput2%29=initAuthor&value%28hidShowIcon2%29=1&value%28bool_2_3%29=AND&value%28input3%29=&value%28select3%29=SO&value%28hidInput3%29=initSource&value%28hidShowIcon3%29=1&limitStatus=collapsed&expand_alt=Expand+these+settings&expand_title=Expand+these+settings&collapse_alt=Collapse+these+settings&collapse_title=Collapse+these+settings&SinceLastVisit_UTC=&SinceLastVisit_DATE=&timespanStatus=display%3A+block&timeSpanCollapsedListStatus=display%3A+none&period=Range+Selection&range=ALL&ssStatus=display%3Anone&ss_lemmatization=On&ss_query_language=&rsStatus=display%3Anone&rs_rec_per_page=10&rs_sort_by=PY.D%3BLD.D%3BVL.D%3BSO.A%3BPG.A%3BAU.A&rs_refinePanel=visibility%3Ashow',
  2219. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABr0lEQVQ4jZ2TPYobQRCFvyNUMpGTjgQbGAqBEZs1i5AD4VWzBoNgF1cihB0NONyk1/mgEwxzgmFuMHMD6Sa7RxgHQ8uzI+HAFRXUT79+7xVMQjPUO/zxFyfv8ONcM3Tafw4nuHZPlxZM62lBu6dzgrsYNsWKNQcA/YAW9xyKew5xSSy/UhWfh1qx5mCKvVsS74ivz7wB2CcsrogAAiIgmqGmWP+bHuD1mbd4N/RgitVbGic4zdBwQxAQm2NxSSwfqI4/OYUZwRSrv9FohtZbGlOMckPVv9ALSP1IAxA+EsYQNUPTYPs08NS/0JcbKvIFeZgRNEM1Q53gwg1hSqIpZoqVG6roiWFGyBfk9JG+j/Te4cOMkN+SX5PLO3x+OzzmHT7NnRFETyw3VKZYviC/QDAfmE9IzwgSB+P/HXecxiic4GyOAdSPNAJy5mCsQvtEFz1RM/S451RvaeKSmIZtjnmHF5CzClMftN/pTDHN0OQDgLj6u+idD5JMyYkCUj5QFevBhcUXDnE1oBKQ5MQLop3g2h1dgnlNBZtj7e7KLYwjHVP7gy5dY8r/eY3/G38A1vO4VlociLQAAAAASUVORK5CYII=',
  2220. };
  2221. engineList.scholar[6] = {
  2222. name: 'JSTOR',
  2223. url: 'http://www.jstor.org/action/doAdvancedSearch?q0=%s',
  2224. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADl0lEQVQ4jS2RS0zbdQCA/3cvJh71ollMICN0FhpwbBlZx+Zg0NdC3/23pbQ8B91YGQOtCAOZJQrIaillLVDgJ6+BPMTJU91Bl7mwOBQQjEuGzJMHTbx8HvD+5Uu+fFLGSy/XlipVQlaohC1NKeT0TOFSZgm3MlvYUtOF+ViKMB9LEbbUdOFWZgk5TXnEKVRCTkkTkkeRMb/cEGS+sZb1T5r54sZVRpwuhq1ONsUU+6tr7C2v8jg5TtLh5uv2Bta7mllqaWDRX49kS1OKe9eqCBvP0u+8RNynI+rIp/nEcdqyT/HX4Qv+/fsfomYnd4xq4j4NAyWFDFboSJjsSLbjSjEbqKXPdpGBEi19lgJWoteZD1XRVZTD1uoyz59uM1hup18uoM9eSMSSz0CJjmGHG0lWqETCZKfPns9Mq5fuwrOETRfpNeQRNqp5srjEwdYO4zfKGasz06vPY/ZWGZ3nThHTWpBsqQqx8tF7DFYYmGnx0u8o5MPT2UwFS2jPUbI5t8Qf27vEnBbW4wG++tSPCNiZft9DTP+/YLUzyFCFHlHvYK6jgpD6FBFrAWHTeX76coXDnT169VrmbvuYD1VyS6Uk5iwiZrAiyYpMMSK7GHAXMtHkouN0FiN+MzOtpfTocvnt4fc839ohJpu569EwVFlM3GsgYslnrNSH5M7MEuELOlpU6QyU6Ih7DWwM3iTpNxPKO8mzzR85+GWXXq2GHl0uC53VDFYW06vPY+HdAJIt9S2xGAww21bK/fA1OvNOU/vKa/Ro1ISNeWx/84DD3T367UaGqi8T9+rp1qi5/urrDFqdSI40pZj2VzHR6GC2vYzlSB3JKya+TTYx0+Zh/4eHHGztcNdtZaJJRtTZWI3VE3UUEdWYkFxKlejXGmlVKYi5tEw0ygx4tIzV2bhzWc32xgN+f/yEhM9BxPIOwzUmQuocItZ8Rj1eJGuqQiwG61kIlSMCNrouFXA7921C5zL5rDifP/ee8WhqluYTGYiAlc8bZKKOIkZqTExUVx1tvN92kz7bBbo1ZxitvcLPa+tMNtSxtbzMi1/3GaupYbLJzr0PSrljOM90sIS4V0//UUKWGHN7SZQbGKoyErUU8V0iydOVNR7dmyPhKmPEb2Ej0cjoVTsfX8il48xJxhucDFncSNY33pxfvBJg1F3GbN11kg4Pw3Y3k9V+hK+SIYsT4a1gzFNBUi5lxFXGqLuMqepaplw+/gNcwmcGmhKGRAAAAABJRU5ErkJggg==',
  2225. };
  2226. engineList.scholar[7] = {
  2227. name: 'Springer',
  2228. url: 'http://rd.springer.com/search?query=%s',
  2229. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAuElEQVQ4jbWRsQ2EMAxFMwjFzULHJvR0GeAaKL2GV4jEANmBiorqOipf5ejH+Dg46b5kRYLv5x8niKNl3SQSC6fs/a4UvOamG0pxyrKs231A24+H8xKg7cdi1ukKjcTngEhcjBobT72SC0ADmjA6pyxNN/gApHPKEoklElcAHYJLDRpdjXaJNrL9FjCaNnrTTwEK0RfAl7gMsCBPH3eAzfYaWN5eDgnuqgLs8ySv5+Nr7fP0J8AvegOhkGr6AYHSEgAAAABJRU5ErkJggg==',
  2230. };
  2231.  
  2232. engineList.news = [];
  2233.  
  2234. engineList.news[0] = {
  2235. name: "谷歌中文",
  2236. url: "https://news.google.com/search?q=%s&hl=zh-CN&gl=CN&ceid=CN:zh-Hans",
  2237. favicon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAERElEQVR4nO2WTWhcVRTHf/e++crko/kyX201jQitIOnGhcWqUBWLSGgRVNCVFqouXFQFa0XQXRRcWBpBURRBo9JWcZGWghhqbVOK1I8uLEksmKS2yTRt5iszc+9x8Wbmzbx5mca1OfB4vHvOPf//+bjnPliT/7uoesq7v9k3o6JOn1gBBAFE3HfpG+C6FZqR8krJRhSQK8z+8eSh9SthhOoRWLTZPklaRDxIEWFagIxlZF2KRzov09/4A/suPc3ocqSCZJGOVn31MOoS8Ms8ihsGDug0j982z2DLONgomFaeWfc3o1cG/ou7mxMoiDBt4VYD77Utsrt7HEwWpAEQsC24YQpbW39h7KtOpjbGGFrvgAY0dOu6Va5PYNpqRlqW2Nt7EgoLUGgE4lCufkkEbIT471e5f0a41tzCdE+M4YE4X0bzdQnU0JOLjw2xcG6U8GyUXN29NTwWTvejvu+CmHF1YsFaQloRijeTibf/5LS2j7cd/GR/IAGZGJwnfK3j6o3nQMxN0GsJ5JcUS0ciqGil3jWyOPRcOoLWYfJNzbO6oWGs/dPDzyoAObNRMDlAg55j18+p4PMpHqb4vyVoTco6C4weayIf2YYCxJortxw/060BMOnzKO2F5C/xKsBXmSRA0IBY+ytuyKC2LWzF2LwXRjGiygfvqQSvQvBFX0m4nFFRCNB14uxDZQKu5E+txFoAI7BcAGurwQVIG0gZ9502kCoIaQNWqEmqIFhjpkouysdQ3Zt4QE51SSn6kiwsw+ieGH2dHtc9IxlmkkJIw+UsTLweJ0iOTeR443iejoiXSRB0InGgZKOrdjgeWwESOXjqLqcKHODN3Q5zy6XuriMV5VRAQUCh6Dh38YuaDABQyP9FiP5SBj54IsKdm0K8+tF1TvwTptGBRB56ItARUYhAbxQ2v5UGwIigcMuFQJMDMe1xSRpoU9Xnq5qAXR5Ds7dksqXfVR+dDbO5EXYMaArWS93YpCVn4cOhMMbW9rtSiqWMcHDcnYY5Acd3vqsIqO3p5+VH7rHCoOvAXe9wwFh4aVesavPHb6cIA9sHwzXgJRER3h/Pg0DaQiHvNXttBgDyfA0ugflFQ2erw+m0sDOiUK8kQMAMt6G1IqagKwrq5UQRzY8OhBQPt0fKRzGZyZysCjqI9aPvpATg+HXL1IthNvREsRYmZwy3b3DQCs7/meW1bw2JHHz3QgMmYHIfPZXj898MjcXmfvdw09zgWar+D3TttuIQEeHBFsV9h5ZdQw13bHTBL0xm2PGZe1NlDXS1aXo7a5+BHk2m4PkNpznvxwrMwM7hZFUys8bt/qRxO7uveNmUjC6kBFsxBU1RuSmqaAp50/PE/qYavOD/AV8tY7oa1F/qLXHPb8UFGDyuV0Ogjr2r9xn4gfyXVD1/qyewghf/vbCi+Qr7AwkowogED1kJ+JCKhaASiIBSgf2+JmvCvyV4A+6kXQlFAAAAAElFTkSuQmCC",
  2238. blank: true,
  2239. };
  2240. engineList.news[1] = {
  2241. name: "百度新闻",
  2242. url: "http://news.baidu.com/ns?word=%s&tn=news&from=news&cl=2&rn=20&ct=1",
  2243. favicon:icon.baidu,
  2244. blank: true,
  2245. };
  2246. engineList.news[2] = {
  2247. name: "网易-百度",
  2248. url: "https://www.baidu.com/s?wd=%s%20site%3Anews.163.com",
  2249. favicon:"data:image/x-icon;base64,AAABAAEAEBAAAAAAIACtAAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAHRJREFUeJytUUEOwDAIokv//2V3cnFUaJONUyWIaIGPGB0ZQAjxor9c8wBGbeqMXwbcHEAEEM5kdlFdZIY1ULc4MthFTywRd1N5reUXqqC7AQ9oI2Zjclwrczup1vU9lUilYDwGndBx2/gp5OjyiGoFx/+CG9j1PAn7jkYoAAAAAElFTkSuQmCC",
  2250. blank: true,
  2251. };
  2252. engineList.news[3] = {
  2253. name: "网易-谷歌",
  2254. url: "https://www.google.com.hk/search?q=site:news.163.com+%s",
  2255. favicon:"data:image/x-icon;base64,AAABAAEAEBAAAAAAIACtAAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAHRJREFUeJytUUEOwDAIokv//2V3cnFUaJONUyWIaIGPGB0ZQAjxor9c8wBGbeqMXwbcHEAEEM5kdlFdZIY1ULc4MthFTywRd1N5reUXqqC7AQ9oI2Zjclwrczup1vU9lUilYDwGndBx2/gp5OjyiGoFx/+CG9j1PAn7jkYoAAAAAElFTkSuQmCC",
  2256. blank: true,
  2257. };
  2258. engineList.news[4] = {
  2259. name: "腾讯新闻",
  2260. url: "https://www.sogou.com/sogou?site=news.qq.com&query=%s",
  2261. favicon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC50lEQVR4nG2TS2hcdRTGf/87c+/NHTOZR2ybtEoz7SILWyRqCmKCKeJrI2gJFRc2G4siRF0qglpRcaFFAoqgFkWxtkLdFNGWToSmEGo19EFN2hKSdGaatCb3ZmbuzH0eF7HoVA/84Cw+Pj4O31HcMtG0Nqu09p7otr2sJJ7noYnnsBA2mHnOuqWdc8OT4//WazcXmWZESsOipXf3OOkfqKVeJ6nnMRGuhy6mROzrfbb48I+7V/5jINOM0P35AcIZnMReku07MAwDy7L4dGA/XdY6phqLnKqcYnTrruye8VFpiS2NoyKLL0q0PCau64rn+xKGoURRJFEUyfTSZfli5pBs+35AXi2+ICfnf5HCd/1FAC26lJ0ldsE7TV2G0HUdPZnk3LzDiTmb7e8c4/ycwZ6tu/ig720aCYOJ0k8cHPx4CECJ85HgX4NgDr/zALquM7Wwyj1fnWlJufzyA2RSOldvlBn74316Owq8O3PwLQ2zF5q/QupBEokEAIcv2GCmWth/fBalFN25Ddzf/RgT1ybZnOp6Q8P9Hfwp0LeglALgy6UGtLW1MHZlFQClFI9u2slg4XF0CdFonoHIBu8sAEfOLVH2ANNqwU53rB0cQIS+7L3MezYazUlEAjD7iEV4cvt69nVpYJhgtP2NzvIzhTWDOCYW4Wp1AT8Ox7W6egRQuMsniKJorY2WSW/g8fRGg34zZlscsmB7BEFAve4SxzFeUCVWvEKF/MjipcuyYttSq9fF8zyJokjiOG7hz/GT0vz5uFSs9VK+8y554ujwP2Wq3L5xZfHrb8R2HKnVatJoNsX3fQmCQFZXq1L95DMpk18j0SnlZKdsPnJ3FkDdNCmTl/R7r8GmLrwLVzAG+uH0JI1jh5CwicqYqIyFMky8by/23YEz1WIAUNLzReOpLUMq047WkUbLZNGyObRsJ1p2He6Hh6kWf8sVcOxbv7hlSuTevH7foDijL8mNHUNSIleskOn5P+1fu3twDSB3ukoAAAAASUVORK5CYII=",
  2262. blank: true,
  2263. };
  2264. engineList.news[5] = {
  2265. name: "凤凰新闻",
  2266. url: "http://search.ifeng.com/sofeng/search.action?q=%s",
  2267. favicon:"data:image/x-icon;base64,AAABAAEAEBAAAAAAIACBAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAA0hJREFUeJxNk11MW3UAxX/39t/ellLAAgUyEBFwIAsOAkNkakxMNjcJ0S1u0ZGZGT+S+WD0wcQn49P0ZZJo0LkYI5i56RwjIzoS2ISEIAzHpxLsYBIKLR+Fln7cllv+PiDVk5zH80tOco7S5kACKOwos6qGrNrHWZ8aZysYIH3vo2hZ2cRWV1i98xuh+7P8X0r7vwCA0jNv4qyqYebCZxQ3n6Hw2EmC7hnWRoYwIhGEzUbYs8DspW+Jr/tRALEbzj/aREHTcQbeaObpy51YXTn0nTpOZHGB7PqD2HLz0FeXMcJhXPUH8f7aixEOQbsDecmVIr3Dg7KroUrOXb8qg54FeflBp+x5qVFu+rwyFoslHV5bldNffyl/KMmVbQ6kEA4HeYeOEl1ZQbFacT17mP4XD2PJzKLuq3YUITAM47/SVhsFJ04hTYKht19DZDxWTUZ1LRszf5J7pInArBvfQD/Vn36BISVS10noOsJuTzKi3iVyG18gr6sD1V5aBlYb24ZB6t5yVocGAcg4UI9/fJRbzz/DzSermDz3EYZhYGxtkUgkmO/4kYKXT6PaCovY2gyi5RciLRrxcAhtTwHbUnL/ynfkHGrEmrcHX18vK8ODBOfusa2qBOfuYcTjqNaCQvTlZVL3VaLabKSWV2DJzOLuu2cRaelszrrZ33IBQ9fx3x1hKxJh7c4Qluwcgn/NoMqEgf3hErZjMVKKikmrqCSz4SmCUxMsdl4l/9gJTCkpbM5MY9I0EnqU0KwbYbcTnv8b4fm+jf2t36B7lxBmMwBl731A8etnMWlWVE3D19O9s9KaOgKTYyhIZDxGZH4OdaW3G9+NDhyFDyGESNrmzMRityOEwN3aQnp5Bc59lSx2XSejtIzAxBjBiTFUgOlzH7J07QqqYWA2m5NWEwaj779D4I9JGi62ExgdIepZIL24BE/nT8Q31nemnIhEWPrlBv7fhxGONIQjjeiyD2//bUxmC8/1DGDSNG6/9Sq1n7TgvthKfGMdBVB23ygecFJ0shlbTi7xUAjFbCarupbs6hoWun9m6vPzlLxymqjPx+T5j9l9cBKwDUjA8UgZrgNPYHXloPvXWBsfRVEUXLV1+Kcm8PbdSoZR4B+hMGuvciFlvwAAAABJRU5ErkJggg==",
  2268. blank: true,
  2269. };
  2270. engineList.news[6] = {
  2271. name: "CNN",
  2272. url: "https://edition.cnn.com/search/?q=%s",
  2273. favicon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAF/ElEQVR4nI2XXWxURRTHf3Pv3W2loC2flggFET8KSRURo2h8MFFj+AokoAYffIIHHwwESRRfxAcxkVoSTMQnQsAYJaAPopbU2qqhCAJaTW1pawWjtNqy61J7d/fe48Pe2T17WdBJJmfuzNwz5/zPmZn/mPdBDOAAbiQ99W0iSdQ2qi1K6hpGMojJfDRmxx3Aswr1Arpao2y18+LFLky0kO63Y/b/UPV7ttOpUF3KkXCUjC+uFVfqM6pPO+Jp5YmonaA8FFbGDdBKoRzykBLkJuqzBqG+PavQKtde63YcCVt0DujixDzXxtp1QouAVW49TypENDIe5aGwxSq2nlvlJoaANsT2e9eLeyUEKiWjKOXxBa1RUA5/cRfoxdzIy4RCRCOjcyFuABRibrdbQOV8MWos0AhU2nLaMGvA9UJgvdRoWI9dhYaj/vvfCNgxbXA8BEHMOwuz9hwlhWgX2Kq9D1yXsQce4JIIbk0N9Pdzf38/f86aRV9TE9POn2fxwECZ171PPMGwMdzd2oqbzxMAeWPoe+wxvD/+YLy+Huerr5iZyZQOrjaQTpBvQE6DfOt58s/YmIiIDH39tZx9913pOXBAPluxQn565x0REbnY0SEiIicefVQmQDIg327fLn4mI0Pt7SIi8sX69XIBpMfzRETk+5YWERE5sHixdIK0g7SCOPpsDx2H7PPPU11bS8/hw/z28cekLl4k/ddf5EZGmLl8OUE2y+9vv83gkSMsbGnh99pafGOYtHQpQ4cOcXHfPgDu3b27PGFNKWv0mo6O6Yy2Nh5sbqZz2zbmP/44TS+8wPTZs0kPDmJ8n6obbuDv4WEa33wT47pMXbSIm/v7uUmkYNiZM9yzezentm6luq6O3jvvpCoI0CUebk8PNDzyCJcvXGDx5s1UTZ5M5y23sCCVot4mYjJJYAz58XHmrVrFL0ePMm/NGkaMIZtKYYBcOo1TU0PvwYM0vP46oxs2MBeuMsKW4qmaTyYB+GH/fuoWLOD4unUsTKWKO8AA6XS6kL1BgIgwPjTE9zt3Yk6eZO5DDxUSMgxZ8uqrOK7L/NWruW1wEBEpC4EupWPdKTTHR0cBqB4ZuWqyMQaMQYIAI8KCjc8SXrrE9KVLmdHYSGQBhCG3rl3L4LFPmFxfT5jLFfqvZ4Dj+wA0LFsGQN2WLVeTjMhzz/W4fP48E2OjNLW00LtvH4hAEOC6Lu3rNzDc3c3Y2XOcbW6GiQlQuaAPLqd4jotAkGf2svsY6+lh0Zo19E2bxpVEgpzjEBiDl0xiRDAI7qRJ9Lz2GsZ1yZw+zVh3d8HLIEC+bOfHl16m8bnnyPT24iYSSGSASPm96VmKFAIfNi5i3ZmznHnrLX76dYj7z52jauasEmsYv8LwwAAmDJlUV8c9+/fT2dfHg0c/onvnTggF8X3yNTUs6eygesoUlr+xi+6DB0lWVxcNCCmdmp5mMPN7ezn2zNM8eeg9fv7wA77b9QZVN07B9ycwGBzXJZ9KseyVV5BcnhBYeOIE7vRpzH3qKbr37KG6thZclxA419xM07YXGe7oBMfhdgRct5w7tIK0gXSAdIGcAvm0vl6Ob9okksmIXLkiks0Vai4v4vsy2nVC2hsaJA2SBml7+GHJDQ+L+FmRrC+DIBdABkCO3nWXiO+L+Fnp3LFDWo2RdpDjIJ+BmM9BPApbLUnhYEgWAGdgzhyq6meTqK4q3pZeIkGiq4uFmUzxig2AnjlzyK5ciZw6xR0nTxIAuWhscONGmDoVs3cvU4IAP+rPA+YYiL0JqygxImuIZkbX4wNx+q0NyF5DFnNA0yciaS20XEAzWn0daz4YqH91O4xVvb29QCnIUTr14vTpvzihdUQvmlPSOmSrnePZhTRh0BDHmfB/kVIbAs0HtdSGCrFz4FrKAirTck21tWJb80oGFSTWAE2VteJKsY4bAOUhiL8J4zmh5wng5WNKbcI5lAikRSDOBW1bo6ehzleQofoWol0Qhz0OLcqYa72M7Jx4KCqFRr8hi4QkfvM5sYn60RF/nMZ1xJ/lcei18f8CXzwtfnAJiVYAAAAASUVORK5CYII=",
  2274. blank: true,
  2275. };
  2276. engineList.news[7] = {
  2277. name: "BBC",
  2278. url: "https://www.bbc.co.uk/search?q=%s",
  2279. favicon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAq0lEQVR4nO2USwrDMAwFn0vvZR1NvtnzydRN06iNf4FAoGg2NmIUy4oSIAiCILiZ5Pa26F/qPX4jJEESqjrMXPUAQFW7/qEDZoZSCkQEAD6r8095JOFXEfFuahaQ3mG/bxUw8/yhHdKzFd0Sa629xCUv54xSyvAZhxkA9jZt763HzJtdoFvAVZCEiHwN3mhoDYB5SNoWx/5ZnfJU1Uj23Pv/AwtOEARB8Oe8AEX8nWWaRvY7AAAAAElFTkSuQmCC",
  2280. blank: true,
  2281. };
  2282. engineList.news[8] = {
  2283. name: "Economis",
  2284. url: "https://www.google.com/search?q=site:www.economist.com%20%s",
  2285. favicon:"data:image/x-icon;base64,AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAALEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/CxLj/wsS4/8LEuP/AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//w==",
  2286. blank: true,
  2287. };
  2288. engineList.news[9] = {
  2289. name: "今日头条",
  2290. url: "https://www.toutiao.com/search/?keyword=%s",
  2291. favicon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAFN0lEQVR4nMWXTYhTVxTHf+/lJTHJzCTRDE61jiLFhWBBhJbSdiEoVHBTqFoFXVgoiNBNu9GN9mNTLbSF0lpKC1JcVK0iLkQobVEKghWsX6jggFO1MyVOzEsmMy8m79/FmZjJJFH7feBw3/2fc885755zv2CKJA1K+kzSTUl1/fNUl/SrpM8lLWI6SVolqfgvOO1GRUmrABxJg8BFoA/A933i8ThhGBKGIY7j4LoujuMA4HkelUqFyclJOlFfXx+Tk5NUq9U2WSqVIplMNro+sMwDdjScA7iuSxAERCIRwjDEdV1qtRqu6yIJ13WJxWK4rtsxgEgkQjwex/O8Nlk0Gm2JFdjhAWuno6VSiVqtBvDgr6fShOM45HI5KpUKlUqlYwC5XI5yudxxhtLp9MwgXvKAedORarVKNpulVqtRKBQeBJLNZhkbG0MSqVSKeDzeMYBoNEpPTw+JRKJNFovFQIJqFYpFuHfvSQ9om8tSqUQYhsRiMYIgIJPJkMlkKI+PQxBQGR1lYmQEfB98H9f3cUsl3FKJmEQ9n6deKDzAGhwpl21Mc3Y8R4cPi2KRBvu3b0OxiFsuk6pWqebzRMfHcX0fFYsQBDgzI/4b5Aj0D9rrTIkEDAzA8DDU6y2i9lLtRp4H/f2QTMKNG62ylSvhiy/g2DHL8RNPGA8MWJtOg+PAnDkwNtY6VjaklZ9/Xlq3Tlq5som99ZZtIT/91Krb3y/dvm2yUkm6elX67jtp/37po4+ku3dNNjQkJRJtvjoHsH27DQoC6YUXDNu507Dvv2/VfeMN6auvpN27pYULpWjU8Geeka5dszH790t9fe1+ugYA0r590vXr0pEjUiwmvfuuGTtxolXPcaQNG6TLl00+Oip9841Urdrfr1/f2f5DA0gkpAULpHS6ie3ZYw6OHetsLBKRDhxo3fF//93SsGJF1wDa91PPg2+/tYo9fdoKCGDWLGuDoL1AX3wRzpyBTZvgyhXYsgXefhtGRmDtWvjkE9izBwYH2921IbUarF8Pp07B009bdW/YAI2db+Yhs2yZ8d69MDpqq+Sdd2BoCDZvhlyuyUuX2o89chWAFVNPj6Vi+XLLvSSdOSPt2mUpcRzpvfdMdvasVfr4ePdDePXqNj+tM9DTAz/+2Iw4mbT1O52efdb4wAEz8dRTttEMD8P58zB/PqxZAxcuwJdfwnPP2fa7cyfcvduevpaIZs+WLl2SfvhBOnRI+vRT6ejR5h8EgbVvvimlUs1x778vFQrSq69Kr71mOidPms7Nm9bfuvVPLkOQBgak4WEz8PXX0rZt9v3bb1IuZzrz5kkTE9KdO5a2Dz4wnb17Tf7yy9bP523TemgA8+dL585ZLsfGpFrNBp89K82aJbmu9PPPhh0+bGM+/ND6u3dLmYx06pR0/Lg0d27T7saN0iuvWD3NCKD1MFq8GA4ehHv3jAsFaz/+GG7dMp3BQVi0yPJ68SJkMjAxAV0uKI+i/+Y0fAg9/mn4uOQ4hIkEYTKJGu3UdzSdxuvrg1TKVlgyGXosWWLAdE4m27FpeAnMSSKBkklrp5xl5s6lMjlJ0OFO2Nvbi5dKTYdCj2vXWpR83+94pX7kjwMRwHFdIq7b8Vbc6SbtASHT7oXRaLTrlftxyHXdrjYikchMKPSAO8CTDaRcLjMxMfGXA+jv7+9qI5vN2s24SSOOpM+B1xvI/fv3CcPwLwcQjUap1+sdbXieN3MW9jmyh+IvTL2O8vn8vzYDmUyG3t7eRtcHlgH/7+P0AUlaJHs6/6r/8Hn+B0w7zXRC+ZfTAAAAAElFTkSuQmCC",
  2292. blank: true,
  2293. };
  2294.  
  2295. // 自用 该列表默认隐藏,
  2296. engineList.mine = [];
  2297.  
  2298. engineList.mine[0] = {
  2299. name: 'MDN',
  2300. url: 'https://developer.mozilla.org/zh-CN/search?q=%s',
  2301. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAABi0lEQVR4nJ2VsU4CQRRFzy66GCtLrWysjMbEyi+wNFHBmGDpH1jYWJtAq5WxpoFEorXxB6xs1CBBI4WJVhpNoPBayMAuuzOw3FcwvMe5eTOzy0OYIGCHMk3ayBJf3FMmTxCieotN6lZwMOpsRQzIUBwZNlEk0zdIjwtR7BqQGwsXIicg4HVsgxYBFGzlGS1pepjFHlSSCiUZ/ehQS9rVerJB1eOZeUKapINNXjz14jMbzdhxWImn5oi2dCa3FuObCH85HoJL0o3mIgYeMt0o3qBVbaZ659LlfpOOyCHza5/ewsPjKJXJv0L7ORjhDIwSDnGi+/kxAv6QfAsIvY+At5SxGSxbkEshtKqanpS1PwcmGgN4xfE6hZ4DowXqlitLkh9PlVJe42e8rYvIBr4dG6ANj0mF/ZBBw2Xw7HOX1NY5Hlfd9b2r/1ufmq22gcc18OYyqA39U53Smr3aIosg7zJwRt4MltJYeEn0R9tJavw0NNqEYDvVcM31uH6WgAJVmnSsYIcmVQrh8f4HufpcPqh3SFcAAAAASUVORK5CYII=',
  2302. };
  2303. engineList.mine[1] = {
  2304. name: 'Can I Use',
  2305. url: 'http://caniuse.com/#search=%s',
  2306. blank:true,
  2307. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAADAFBMVEXRa1hIvVUBriaErG7//vzQx7e116nq4M2Dy4FmYktwx3Tt48/y6NQXsTH+7uK2fGBhwmhoxW7Wg3HEMxe8EAD78Nqn0plRvluZ0ZLKQizNs6qupZZ0zX/9/+3669vM5cUxt0QlszpQqV6HhoPP3L1YwWKYooEQujB9ynxWUTgly0Tp38yhlIhAkEAldSRdOC706tbw5dL/8ezInXD169iK1JO7u6n+9ODAJQSY2J+Wrc+z4bLluKpnkcWbyYz/++CMzYcAqQz25dd90Yn90/ll020qwEPk28j5/OjhueEstkDfoo7k2NP+68n/5+CmSj3i2MX85dI6ukzx+ufhqp7+8/r39er29uP77NU0kjgvvEQ4LBc8nEFOzVqQvY0evzvN+f/m+drt8uHpxbnb5s7s7dpwomfb0cA3p0Ti7tfB473n3bzc7dDe3szr//9SZH0Avij37tng1ssttT7dk4Xf4t6U4ZOm3Kh81ntaelrv6Os/WC6I3Ik+iDvuzr/z2M6AgICBgYGCgoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OUlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////XnzsNAAAAmklEQVR4nF3KQQuCMADF8U2EQT1hklJCQSIhbIdCCtepRodgpxB26eKxj+ChL99mhOm7/OHHI8AdD+AFeZzXRXEhTLKKSuZyYD49xFM4T+E0hpttprAeQ2x5YAZYJEsb6KgHHweN3f6DSnL/iLTa/B5lWOq21SpMdZum5Cn4nguTi+ydCWMEAVZVR/mOAqAd8AWgBz8H12qGYR9XXh8E2WsxgQAAAABJRU5ErkJggg==',
  2308. };
  2309. engineList.mine[2] = {
  2310. name: 'GitHub',
  2311. url: 'https://github.com/search?utf8=✓&q=%s',
  2312. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADLElEQVR4nM1Xz2sTQRT+dpNScqhJW7ZJ9mx706RJ0/SHbRHR/8Cz9ORBBBEUEfwjBJVePHhQFPUiIi09SNqkSbtJU70p6dH+IOChQmpNss9Ddqezu7NJmgT0LQPZN/O+75s3bzI7wD826QxjPURUawtUktrGbWfggK7rR3bnxWjc8v51p+AIlGVZBkAdC9B1nQXbCZuZXYwsy648bh1yvV6vA8D9Bw+xvLLSNrlFSPFUiMfjEXKJnJ5arVYDgMj4REfEdvtSzAMAvF6vg8/hqFWrBACRWKIn5EzEttYQ0ddn4bS8VE3yHs3cIaKYR6VSOfD7/WHTJ3P9YSJykCuKgp1tDTvGDNoxt/FEBJ/PF+J9LAMnJycEAFFb6s9CbDc7Fo/X398vAYDX8A+ACJH4pBOFmm7jpiaMtOHJAPD7+PiIiBqdthaJJUBEHbVmeKqqjjEBLMhQzbdifrNjAcX8phCTiLBbKn1jS0BEGJ9IOrJlkndlgngeUwbQ11AsylhnM+fbtpZzxTUF+BrpFzw9ECDCXrhyjQlgSyAq2a7TDyC1tu7AHvT7LQKO+ZT0WsCdu/ccvvdvX1uWoEq6LlyC8cQUSNe7a6LH6DMFgIhQyGUE+6W7QoxNzjTFtAhwK8RYcqYj8pu3botnbxR3YGjoPBMwODx8jhWi0fLZNPsdT84inpxti/jxk2eIJ2ehaQXh7PPZtDn7XYA7jH6WywQA8alLrFgKuTSm5y7jT7VqKaJCLi0sOD7WzczYIUWRWAYMh0oAVpc/WgA31j87QIR/ry2pgXwuDeLIgdPTEAD2iQgBbo8CjfrQsutWAS7bs9m2fffmJYgINxYXr/N+xydZ+fCQACAxPcd8dgFuxsfYzcRQgkH3TzLDPOWDgxoATMzMOzpfvXiOsdFRIYlo/OqnDxgMBBrkoZCDT7Y7ANSVUMhDRNAyKWiZlOUk+bG377oD7KeOlkmxJRWRuwkAAH0kHJbM4traWMPWxhoAYGF+rmURmuMJwNOlpUcj4fCZLya8DRzu7TmuZu1YUFVbXs3cMsDbr6CqSkFV9X4vlbJuszfbhWj0qjFeakX+X9hfKwNpwLLdyLQAAAAASUVORK5CYII=',
  2313. blank:true,
  2314. };
  2315. engineList.mine[3] = {
  2316. name: 'w3c',
  2317. url: 'http://www.runoob.com/?s=%s',
  2318. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACHklEQVR4nIWTX0jTURTHP+fu59xUCJLGCgp0IIPSIvLPg9JTvZq+RBj5WJGySWVPKSH0ZCSWD/ZiFAQVqQUVBulbaQT2IkVEUhISPrTptE23e3pYm26t+sLlHrjnfL/3fM+9Qh4Gp5ubVOSmqlSLIACqGkUY8bp83acP3drYmi+ZYGSq3RP1RudFxJ9PmgOVU6GG0bs5BCNT7Z7lkuUVwPlncZaEi6GGsf4swcD0sUW14p954S6cryAoKoJ/j6VybxLEHAzVPZp1Bl63HBHB//2bYe6N2dLUJhqD68xKgANflpj7GCewL4m1qQnAJwPTLZ9ECJS7K2ja3gFogRuneRX4mYowsdSHIKRc7HJECAAYceEu2rRARECV6Ooa28pKUU0Tp0xRNseVpNXkqxljeDz5ig/zC0RiqywsLnGhf5jYWryQO00mv/j4+T6qqyoJVuzm3tNJaqoquN59ls6rN3j/+WtuubDgqJIQoRjAWsv9a5eZmnmHqiWyHAOgd+gOw71duIsc1lKRTUExE0aE51tZrbUcrq1h545yzp1oJmUtPWfacvzJoLN29KWzXhw76U6UxRJ2BSOu7GGZtyQnOTNdVft757YImn5IMy1XBHoKjfAP29JbPFw/7gUwAOH6sV5Fh9I6/1vEExvWl/UhE4TrxzvUchRl9a/qyoMfdftLLzU+WclvLQeDb1uDNqltiAZREgIPPY7vWf5XBvgFMS/Jw/yUPqwAAAAASUVORK5CYII=',
  2319. };
  2320. engineList.mine[4] = {
  2321. name: 'GreasyFork',
  2322. url: 'https://gf.qytechs.cn/scripts?q=%s&utf8=✓',
  2323. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3ggEBCQHM3fXsAAAAVdJREFUOMudkz2qwkAUhc/goBaGJBgUtBCZyj0ILkpwAW7Bws4yO3AHLiCtEFD8KVREkoiFxZzX5A2KGfN4F04zMN+ce+5c4LMUgDmANYBnrnV+plBSi+FwyHq9TgA2LQpvCiEiABwMBtzv95RSfoNEHy8DYBzHrNVqVEr9BWKcqNFoxF6vx3a7zc1mYyC73a4MogBg7vs+z+czO50OW60Wt9stK5UKp9Mpj8cjq9WqDTBHnjAdxzGQZrPJw+HA31oulzbAWgLoA0CWZVBKIY5jzGYzdLtdE9DlcrFNrY98zobqOA6TJKHW2jg4nU5sNBpFDp6mhVe5rsvVasUwDHm9Xqm15u12o+/7Hy0gD8KatOd5vN/v1FozTVN6nkchxFuI6hsAAIMg4OPxMJCXdtTbR7JJCMEgCJhlGUlyPB4XfumozInrupxMJpRSRtZlKoNYl+m/6/wDuWAjtPfsQuwAAAAASUVORK5CYII=',
  2324. blank:true,
  2325. };
  2326. engineList.mine[5] = {
  2327. name: '人生05电影',
  2328. url: 'http://www.rs05.com/search.php?s=%s',
  2329. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIACBAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAkhJREFUeJytk19IU2EYxp9z5s40ZzSRkWOQJIog0dzmH2aECFEIhiSCoN2oECJYYUI3QjqlQdqdF6bYRcwLUQhRxBBkXgQqKaKRjWFYMmnmyMN2FMzv6SI9FnXRvwe+m4f3+/G+L88rCSGIf1ACAEiS9NcA+VfmdjiMT1tbv0cQQpAkhRD8sL7OOxUVdAB0JyXx3doajxVaWWG1w8Eal4s1Lhdr3W7OTU9TB7ycmmKJ1UonwFKrlbfLy+ltbCRJxlWVFTk5zAPoPHqXLRZGIxEmAMBGMIj2hgbg8BCdfj8uejzY0zT0d3VhX9Nwt6oKqenpuNfTA0mWQQDnsrNxJi0NeLO4yCs2GwtMJr4KBPSWnw8O0tvUxIVAgBcMBo729fFxayuf+nyMqapeh/b6ejolif2dnbqpRqMssdk47vdzZmyMTlnWW88D2FJZeQK4npnJktRURiMR3ez3+VhgNvN9KMTPOzt82NzMF8PD/Li5ydDqKmuKini8O+QbjXzW3a1/nh0fZ57RyJ6WFr3oWEII9ra1sbaw8ARwKSWFb5eW+OXggKMDAyw2m3nT4+GepnF2YoJPOjoYU1W+np/n/epquo1G9nm9OlS6VVrKpORkaLEYFmZmcDYjA72Tk1ASE3EjNxfns7KgxePYDIUgGQwoLivDo5ERKIryLUjB5WVes9vpkmU+qKvjdjhMktwIBpmvKPryrtrtnBwa4r6m/TCWdDQL9jUNp8zm7xOKlbk5xHd3cdpiQbbDAcVk+inJkhCC//2Y/kRfASoRrtb2v2kbAAAAAElFTkSuQmCC',
  2330. blank:true,
  2331. };
  2332. engineList.mine[6] = {
  2333. name: '射手网(伪)',
  2334. url: 'http://assrt.net/sub/?searchword=%s',
  2335. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADfElEQVR4nF2TQUxTdxzHv7//e319pH3QEi3MAYMpqWZj1c1lESIz0WwLXmZl7CAXjCYzuyCJJPVgPAy8zZglEuRA5sLJiIlm4ExmQtDilmVgQrDCsq2WuRRKoX20tO+9//vtglni9/z5fk7fLzEzXs+T8+f3rTx6VItSSV2fn4/qVVVjX25szACQ3xLt72Oee8XS64LfYrHe9bm5Do/P50mOjxvEHJZESx8MDKzv6O5mZ3bWHz9z5s8t0/wOzDPqq+JPx49/nJqY+CIYDkcPj46+wa6L5N27YNuGZD5gmyZ21dcjnUxCWtZHKJU+8er6VQEAP9TUtIZ7esbbR0a+lqZZLUslu6atzYlcvCgl4BLgCE2zXdd1lm7edMxcziKgOhCJfKMCQGFlJZpfWqp+LxYrldfXPc9u3IC+cyf9Oz0tBOBKQAURCyEgVBXBhgbFSqcdaVlCAAAB+7Nzcy67rvJWZyftO3eOVuNxpB4+ZAmQBFitqCAA3NLfT9GFBT4wOEiObbvqtmCjnMkQiLA0PMyKYUDVdaH7fNTU2cl1HR1Ue/Qou8xkNDZybnGRVuNx8vr9qjpFFCDAkYUC2ZubqNq7l6x8nkPt7fjs0CGEWlsZAJVzOSKAnw0N0e+XLrnlTEbUHjy4JjKVlbUuUOEyO7JUonI2i2AkQm6xiF/6+vDjkSN0a88e/DE6CiJCenqazUzGNUIhrj12bEj8VSjU6Iax693+flfRNKpsbqZQa6v458EDyHIZgXCYpGWBpQQAaJWVEIAiNG3r/StXBgRL+XbTiRM+f1OT/WtvL3kMg8vZLDd2deHT+/fRNjzMkQsXgO3BqYbBBJAsFh1zcdFW5xXlxZuTkykzkZAfXrv2TiGV4uWJCTR2dWFhbIzTjx9TLpFAJBYDtjUMsDcUyq/OzEB87zg/b62urjWfPbubhHCmTp8mUhTKJRLs5PMkPB6spdNgAMxMiqa5BEAJBmdnL1+WKgDYwJ2ng4OfF1MpKR2HG6JRpfjyJf6+d889PDJCu0+domBLC4iINb9fAlB9qhooAxAA8BXzLW8gcMeoq9MVXdde3L6tFJJJJZ9MiumeHlJ9PgQjEUjLEuVs1uvRdeuppl3VAoH/37g8OVllZbP9ievXA8l43OvXtJDrOHV6MLiDdL2+8eRJ2KYZ31xeTnoDgalCd/dw3fPn4j+2Ya+YXX1PBgAAAABJRU5ErkJggg==',
  2336. blank:true,
  2337. };
  2338. engineList.mine[7] = {
  2339. name: '游戏-3dm',
  2340. url: 'http://so.3dmgame.com/?type=4&keyword=%s',
  2341. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIAALAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAtJJREFUeJydU0tIVGEU/v57r3dmdJzG0a6T6UyaM6GZYkJhBRZE9EJcCEVpVIuIyGhRi6hNBC5bBBJRqxgiopoWlVZoVvQgUsuaIZPyNabzuukd5zre199CMaMk6IPDgXP4vvNxDgdYBKET/GKt30D+Vrx8alu5JCn5Jl4Mfg9zwpoyy7j2JjV8qLXr3wLnfV4UBB2bSyqXt7gKM0vtdjMkSUU0nOzu7Qqfbjj3tGNRgRgFHl3YsnPL7iK/IJh4EIBQAkoMEINC/KFrT+8N7Nmf77yrHvb9KXC7qdxaVlfe7/EucRJQTM9oYBiCkYEEXEWZmJY1RKOK+OROYFVZrTDR91At4n7zn2evdzgtzgedI1BUQJI0yLKKowe8aO2IYGhEQoaVOIrLlx1LDbPipu2OSvK5dS9vzx5XfIEhVGulfq+k14VjMzDVuBAKxUAjERjTMsCxYCzpyF2aA9PzyLh130p71MB1LqkzXSSRb1ufln0rN8+01ZyYgduVicl0DY6cJdCyV0FTOBAiw2KKw11iQzzP6szyZmGsW4xwUJRXxZXOI6mUcsq92g4GAAWFyVyBZenrAMLO75tSBUbyLXjpLQwdCA2IPczHz+GW4cGplKdklgwQUL4YbMYGEMKBAQEDgAEFQ9LAWjdCT3Ojv18KMkZOGxPrSxpiVJbkpA5Np0ilVMCyBoQuPBEBQEDmMjWvfRVIjFUNVbfJJD4R53wndzmFwoymAo/tIM9DqNpxBoQxzRF+wQCgGxSBZ88bK3c2+QCAybJlofHivXFLw46zr9vHaghLBg2qzk4C5sMAoGoaPrx8eTN4tfnGvDdKKQcAycQM7sff4X3zJVt1he3KikJPvUVwgbAsdINO/fgaYEY7/Wb7asG99Xh7aKEAAwC6rmM0JqJv8hp6H6s297cXtZMOjyhDmKAZrGymiplXk+kjSfZLz6evMb/fL//xWf+Dnxs2M3yo2q6nAAAAAElFTkSuQmCC',
  2342. blank:true,
  2343. };
  2344. engineList.mine[8] = {
  2345. name: '搜狗表情',
  2346. url: 'https://pic.sogou.com/pic/emo/searchList.jsp?statref=home_form&keyword=%s',
  2347. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIADiAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAqlJREFUeJxtk0+IVXUUxz/n/O67772rjdH1NVpRoeVo1sZavnI0S0vFhaOBpC4S/0AuCqE0aNGi3IS4kEkEF+EiyoVhxIyKNsxYGxERFEVI5w/WKE/GAe/YvHfPadEdkaGzPH8+fM/he4RpkdXTOvARwjKgvUiP4pwDjiYDjf7H++WxwVlAN0on0A2cBAaL8gvAWmAXRh+wMxlo3H8EyOrpk8BZlOsIO5K+xvh0ZQDZ0rQN5zBGB7A8GWiMTQF+RGkhbCbIAlHZRJBXUUkEHrj7EMZFz+00ud/BOIYRkoHGRsnqaSfKMYRXUFktQb6npJFECkEeAkbuVVom3jTz3L/C/ADOVYwPFdgGfJf0NcZFZQcljSQOSCX0SFmfkVjnEOsiIt1OpKckyMxixW5gmyJ0FgeDSP6USJFYkUp4W2fEB7UtfkOfiG9WTv51pNoz+h6Rflac5BeETgVqOMMABN1DkOMS1KSkJamGzVIOZyXIrclNz3/zz/pna9WeUSsAw0BNAQcUoPrr3/cqJ25vcPx14BDOMA64z8X43HO/NvF++/ICoIArMITQATDxTm3rxKr22eUfhi+Vjt782LLmfHvQXOmTdt1zg9yfouX7C8BCYDDC6UXYAJz33D+RwKGHa+YcJ2ivjU/eEJExYMRb1uFNg9ynVujCOSVZPV2M0I+wBGWdBN1NSedLJKCFUc3xlkPTRt28C/MRnIsYb04Z6WuUFQjvJn2NsWxFbbEEWYLIc0Ab7uOYX8E5XT1zdyJbmu7HsKS/sS8q5HyJMQ/lt+ytdEty5u5l4Mr/2RlA4jDkLfvj0S8UKhT4FGEvwu/Azzg3/pvgZeAlKYdvw9OVL7xpH9j9ybXV3jsXZDo9q6c1YCOwDOHFIn0LOIfyms6KUymHPeWfRgYB/gUGFwYmsuO+WAAAAABJRU5ErkJggg==',
  2348. blank:true,
  2349. };
  2350.  
  2351.  
  2352. // 导入列表
  2353. var engineList_plus = [];
  2354. engineList_plus[0] = {
  2355. "status":3,
  2356. "version":1,
  2357. "message":"应用app下载,由奔跑中的奶酪整理",
  2358. "name":"应用",
  2359. "engineDetails":['应用',"app_xin",true],
  2360. "engineList":[
  2361. {
  2362. name: 'AppStore',
  2363. url: 'https://fnd.io/#/us/search?mediaType=all&term=%s',
  2364. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADtElEQVR4nL2XTYtcRRSGn1O3enp6mJk4TBDGIFHpjQtdGpigIApq/AGKCCKBrN2Jf0AwCC6EiOLKnYIKKhJcSBQMgiaKX6DmQwnGRNOrgUz6457joqpuV/d0T/fViRca7r1V1U+des97bpUc/+IBM8AUDADBCPdKuNK94TAbPqvlbWRtgimoxGcFQyglcFJ/kQY+DJKIchgaQADZ/SgA1PI22QG3MbjKcHwaA4QJkKJDY6NmHUfhThpgRt96lNrHRABBxI/AtYKHlVAL/6FpwjFEvxOe/1yQwQTHAte6Z9jfOsTda5vcttJmpbmfgoK/ty/xyaW3KEvFxEbgpcTVGYMrIAbeMs0nwQuaXO2d5JHbT/DwXW/T8quk6+fOWd4/9yoXtr5nqdgHInPAg0xqhhPwk5c8Rq6O5dYGz29epyFNSisB+ObK57z+4xMsSJtFv8KyX0OZN3JBLeYKkiaQSxDgg3LA5oGnOdI+hpqCCDcGW7x4+km6vZLVxj30taRf9iZovlvkmQsApxMiN3UcPvAMR9rHMAwnwk9/fclzpw6iWkBhDGK2jcNLkYkJl2ybeOnew07Nb1k6yGPtoxiGIHz62zt8cOEV1hYOMbBeWLEJ2b675qPwFLTPtceEq92TvHD4BmqKiHDq93f5+OIJvGtVGs4Pt6nw4AIJEqTlAc/jd7yJo4Eg/NI5w3vnXwJxMcOn+bxe5AqYOUrA5eW10/2ah+58CjOlW17n+Nn7WCxWd4XX0TyHp/cur3AbSw+yULQonOflr45y6+Kj0V51ln125Pm3w+e1/d71+zGMXzvfcm37Mr7waK2E213zHK6W2VBN6Zc9NpbbCMJrPzxLs7E4FT6P5uNfS83hMXoT8KGTo2/b7Guuc3nrIr3BAvgSdLLP54ncxiK3fEUMTAQ1wQ1tKDjxfHj+DZYa6zXg82tevY+Jq1ZJIDhp0Nn+k+86n6GqNSKfnu06CR73Dum5coHgOX3lI4SCkvI/+1zzZSeNHYWTV0IV4Y+tc/iiuSfZPq55CiIvw7EQUfm83ve8nubj8NBXcPVr+3wVbprmVd98T/hvfT66SZ2g+bTIq12Y4KsZ77HPZ8PDs5sN30PNMzgxCDc8NNwcn0+DD+tAfmioEfk8Pp8FB/DlRPje+DyHMwavkjCdCf8PzcfbFYZbspvh82nwcAlgqRTn8LgDmgWvYTXG2kmHWRG8SGM4JwMnwyrl4glXLBytXUw2iXkjhNItkv449CVOIvk8vorvLExADMHxD+83EPzS100KAAAAAElFTkSuQmCC',
  2365. blank:true
  2366. },
  2367. {
  2368. name: ' PP助手',
  2369. url: 'https://www.25pp.com/ios/search_app_0/%s',
  2370. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIABTAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAhpJREFUeJydk81LVGEUxn/vvaMz45SjlZpfWBpUkyj06aIWFVGBCG0EN22CFi2CNtHSfZsyyFWL/ANCgkDCylWEGzcKLSKn8qOaGUbHdO69733P2yK6OemifOBsXh5+7zmc8+B5XkZr/cIYE4qI/ZcyxgRa6/EgCA4ThuFLuwOJiIRhOK5ERCulYmzSQlHz+v0ac4seAMdaE1w4spu2+qrNNkQkUCJilVLR48RsieHny8wuevihBSAeU3S3Jhke2M+V7trIa62lAvDu4zrXn3wiWwiIxxStddUALK4E+KHlwN5qxm500NeZigBR69pYRqfyZAsB6aTL3ctNXDueRgHPZla5P/GNbCFgdCrPiY4aqtxfnzq/AUsrmun5DSzQ35Nm6Ew9DydzPJjMMXS6nv6eNADT8xssrehojKiDUtnwwzM4CnrbE8znfZ6+LQAweKqOoy0JFLDuG9Y82QqwFiygAAdFb3uSO5cacZSiqyHO4zd5BKhNutTVuFsB/FkEYi21CZfbFxtYKGpGXuWYmCuhgLOHdtGcjm0D2CTXUWTzATfHPjO37FFcN4RiyTQnuHV+H66jtgHYSsjXkmbmS5nVsiFV7XDuYIrhgWZ62pIVvghQFVM4SmEEYq7iZEcNj4baWChqMi0J+jpT7Em5/K3olMtaGJnM8eG7z72rTXQ1xrebrkIiElSEyYi1oZH/ChO+72fCMNxxnH8CVx+vwwyO9nUAAAAASUVORK5CYII=',
  2371. blank:true
  2372. },
  2373. {
  2374. name: 'Google Play',
  2375. url: 'https://play.google.com/store/search?q=%s',
  2376. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEg0lEQVR4nMWXXUwcVRTH/3d2IVblI2FLiolFUkzIFNFIH5o+mGpc+qY8GGJ88sFEU22DpIGqiBSIqcZoqpY2xFQ+hALbsqgopEQxhkQhjaUWJxhadE2hsizLxy77wdy5x4fdgQvd5UtIT3Iyc2d37v93/vfc2VlGRAz3MKzyYN/YTLJ18exJYTUWbQkprb9kFo/sNACTHXhgABXC2luUmHRFtVgtPClxV+2eFFvVQNLr3p0CUORBiJATCtnVcLBAC1sMqxv+4yMLEyOZnuriV1FnjTfJtgEIBVYoQNhvV3V/gUYWhiDTbePk+7h15vbvWb4PnttRACgAWOSoz9pVY9aukQWAhcGHcM4/YqYzdb6yJ2fho7ydAWAALMsQ3GtXDY9dEwpACiBAmKNgwZjhvWrzV9ceXDiTvr0AlugV86gANG1XaepZTf6aToZ12vC/NsTdIxm+mtIiOBK3B0CRkknnk3YV7pUQABAGT/1X+E53z98Yzgx++ML/B5BFTRfMZXHHhgAAP4Wzby9621N97/2YE/jkwNYBlBgpLQcm7SqmnokJIUCYE6HDt/jUr2lzpy48Gfj8oc0DyA7Eg5k8osIdGwIAOBmKF4GX9y/83AnXnnLg6fs2DiDtgLjJALiPxHUCAApDo8NNM44D0Cer4BrUcOfhlzYGgKiAmbL9q5ckjhOFwdFh57QzFxSdQwQegT7+Fe6k9MOdfWh9AHkHmOO1nJAgCgOjw06PM3epADI/IUDMHwK5+uFJqwOKlrbtyue7BYCI3myKE+KHiEIwaM/fX8edU848WJY1AWkuACAOkPcVeL6bgA2VdzsgVy8f1+mL9xsm4KwZWykW7y2DAM4DXJZceVMsiDWyprteK/vhooohWx7OPT68VL3ZA5KDBEA3cP76OE7HBlgtalYhN6bUiNVd9VpZb6tKxEDEQNd35y5BSA4QAdxAvy+IgwkZdDQ/n+I4IEPIjqxuPgZUfVOvlfa0qkIQiAACi+RQei5ql50wDPwd4njRupeeSs6iwVhyyyE33ypB2YFTzgbtRFdbpHIwCIpUScRAAqDfdufys/sHFzne/gvI2bWP2u8qNBrx33IURLrc3AnR3VHpaNRKvm5TibHIJSIwRQEhQkFgggtxYX7gwfL0M+TOjisQD8AUXn3OgIr2Rq2ks10FYyCiqGMRByAIhiJ+0hd5Seq1vqE1n7/rOiB3bxTi3bYm7c0Oh0pRcUVhIEFQGINBuBkGStMGejs3qLsBACnKm5u04ksO1VwJhSkQRCBgNkRGjeua59N8uspjTbU5AHO9pT38TlOzdrz9kkqMLcEZJLguxBdGKFiR8Wefx7YV5ZgAq+KtxmbtWKtDhcIgiMAAcBJXFjkv2ftHT9xfw60DSNafrG/Rjl28rBIYhCAYIE0nKs280fX9dgjHBhCCAwrKvmzR3mi5rJLCYBB5dRKVrhHf+cPUt6V13gyAVtrQph1t7lANxrjOjdpAWK98zNU1m7XdytFY8d/w0c+6kzvO1Z9ICOs8BL3liVvf3twh3dgA9yL+A+DGIba7GhlTAAAAAElFTkSuQmCC',
  2377. blank:true
  2378. },
  2379. {
  2380. name: 'Microsoft Store',
  2381. url: 'https://www.microsoft.com/zh-cn/search/result.aspx?q=%s&form=MSHOME',
  2382. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAWElEQVR4nO3WMQ2AUBAE0TkEkGABRQj4XjCDAFoQgwUSDHw8bEhoZvq7vHLrWeZO2LhfBbCexD+G9PCrBAgQIECAgN8BVmx3PCZoUwH0w0EiQIAAAQIE5L2DfQwqapCvzgAAAABJRU5ErkJggg==',
  2383. blank:true
  2384. },
  2385. {
  2386. name: 'Alternativeto',
  2387. url: 'https://alternativeto.net/browse/search?q=%s',
  2388. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADVklEQVR4nMWXXUhTYRjHf1aO3OJMt2k1FDFbCSFZkgaVeGEQgwIr+4CC6IMkow+I6qqL6iKCgqBAiEq6KK3bjC66iG6KPi0wrTWLNtZ07hyd+8jvLt4waefsbHPVHw68e5/nfZ7/ed73+Z93WZZjdyb5j5iTrGNscoLYQC+E+iGswEjst9GQA0YzmMxgysViys0sATkUAG83DEfVHUZi4hnwC39zAdiXYJlrmjkBORQA9xsA9tWtYnPNKlYuc7DAmjfl4w8qfP7qpbPHQ2PbI+jvg1AA2VGlW40svTMg97yFwT7untzDDmet7htFojGutj7g9O12MbGkOiGJWboRwzIAG2urdV0BTMYcTu1toLlpm5jwfUror09gfGwqcCo42OCk0lEIYUVsowb0D+G8PAgrtD58Qm31ct50uvD09vPy4xcAHPYCtq5fQ2mRPW7pifo6dl5sEV0j5adJYH4JhBURSAP3n73j1fXzcfNli4rEIDKguVZ3CyxSPpSuBItd9LvFLqoyDa9dXjq63XFrK8pKxSCsaMZPSgcsUj7y7GzR67JPTNokLjjXUb64GHuB9XeyFJGcECnf4et7ACodhZzdvQlnTVVaCVMmMD15c9M2DjY4M5I4KQLy6DB4uwBoP3soY289HYkPoecDjI1ysr42YXJ/UCESjWna0yIg/4jAYB/YJM4c2K7q4/b42H/+Ggu3HMf1zZcWgTlZYxrMh3oBuOBcp6qCHd1uVjSeSzqRVh7tLYiGAShfXKxq3n/plhj8oQmpQptAbAiApSWFcSZ/UOG1ywuGuTNKrkNAVEBN4/0B8YXEkNoHSg1JX8lUMTkxYwLaFZgtuKm1V0VZKdgkiAyKxyalLcXaBExmAN52fVY1tx/ZJUjYJDFOE9pbYJQgFKSzx8PayvI4s7OmiskMKKNuBRrbHqWtcjMiYDVKIFmhP8TRyzf/PQEA7A4w5HDj8UtOXWlJWAm3xxd3KXn49IUY/KqmGrKsh28kvJYHh6Pgfgfjo2CTaN6+gbrVFVP64Pb4ePy8g8Zr97SDFJVhzS1IjwBAcHQEfC4IBRM7msyiLaf/tizUTA5JCpE12wDFywhGQzAYEEl+KSU580Qic744NykiJSW0GiXRnhmE/h+Tv4yfzZcbwYt6jlUAAAAASUVORK5CYII=',
  2389. blank:true
  2390. },
  2391. {
  2392. name: 'Github',
  2393. url: 'https://www.runningcheese.com/go/?url=https://github.com/search?q=%s',
  2394. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEmklEQVR4nK1XX2hbVRz+vnNv02xrIxu9N1mSlTiuIL26PdStiMjciyjq9ElkTwMfrMhEdOjDYEunU/BBJw71QXwUpA+WoQznZGygOOdEO6aCQWKbP7e5rptpM9qkyc+HJttdctNma76nnN/vnO/7zrknv3MO0SFs2w7Muu5uAfZAZAhAVMgoAFAkByAH8ncCJzYZxpnLly+XO+Hlah0ShhFZIA+LyF4AoQ79Fkl+HhQZS7uuc0cGLMvqnS8WDwJ4VUQ2dCh8KzlZAvBeXyh0NJVKLXZsoD7rCREZuRNhHyPngyLP+K1Gi4G4aW5bEvlagHg3xD1CGZ18IlMoTLY1kDCMyAJwodviXhNBYId3JVTjh2VZvQvkhFecwB8EviB55Q70rhEYJ/BLIyBAfIGcsCyrt8XAfLF4sPmbU6ljjus+d+/QUARKPQ9y2Tk5D/ISgXMEzoKcBPDfcoqzBPYPmGbYcd1nSR71corISH1zNyZ5Y9Olmnc7NW2n4zgXGm3bMPquaNrg6Ojon8lkstZEzHg8fo+mae7U1NTVRjwcDt+NWu3vW3jJUlDESruuQwCImObHIjLavIZK1x/I5/MX/da3U0Sj0cFqpfJPc5zkJ06h8KKybTtQLzKtqFaH1iIOALVazfaLi8he27YDatZ1d8OnwpEsQdPOrdWApmk/kfzXJxWadd3dSoA9bcYeyefzLUt3u8hms1cg8rpfToA9qn6wtEAPBL5cq3gDwQ0b/LlEhhSAaHOcZGl6ejrVLQPpdPoaySmfVFQ1jtQmFEhKtwwAAERmWkJkVNFTjG72lYGuigMA2cJJQCkAfju0PxwOm93STiQSQfh8agCuAuB7YVAij3bLwOL167tEpNcn5SiK/Og3SEReFpFVb0ydQIBX/OIUOa9Anm0zaMfmcPi1tYpHDGOfiDzmmyTPqtDGjd8CmPM1IfJuxDSPDA8P99yucDKZVBHTPCDAp226zG0SOdU4jI6LyEt1V+9r5M9VkTcgsg0ACEyD/EwB36tA4GImk5n1Y9y6detdpVJpWAEP1kT2QcRqZ5BKHXdmZvYrANBFjpEsAwCXB7oDIg+B/BUABNgiIoerIqcq5fKJZDLZ8tcFgOtzcxOo1b6r1WpvrShOLvaIHKtPbhkR0xwTkUP1ZlEPBGyS65bK5R+8dUFT6unczMwJP+JIJPKIVKtn2gl7DIw5hUIS8BShvlDo7frNBgBC1XJ5LJPJ/BUUuZ/kAQAfKKVeWN/f/007Yl3XJ9vlPOqTfaHQOzea3lw0Gt1SrVTOA9gMoEpNe8pxnJOrknoQNowKAL1NOq/19IzkcrlpXwMAEDPN7UsiJ2+YIE8DOE1gToDww7t2HR0fH6+uYGAJgOYnrpOPZwuF37xB30ITi8XiS5XKVxDZ3pwbMM3eld59YcOoovl8IS9puv5kLpdrORF9d3M2m830h0IjJMdI3vKkKpVKvmO8cjd1WSb55rr163f6ibc1AACpVGrRKRSSPYBNpT4EUAQ5n0gkllZUJ6+CnCf5kR4I3OcUCofS6fTCKqZXh20YfYODgxtX6xeLxeKWZXX6isb/mQzVdYidKdgAAAAASUVORK5CYII=',
  2395. blank:true
  2396. },
  2397. {
  2398. name: 'GreaseFork',
  2399. url: 'https://gf.qytechs.cn/zh-CN/scripts?utf8=%E2%9C%93&q=%s',
  2400. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3ggEBCQHM3fXsAAAAVdJREFUOMudkz2qwkAUhc/goBaGJBgUtBCZyj0ILkpwAW7Bws4yO3AHLiCtEFD8KVREkoiFxZzX5A2KGfN4F04zMN+ce+5c4LMUgDmANYBnrnV+plBSi+FwyHq9TgA2LQpvCiEiABwMBtzv95RSfoNEHy8DYBzHrNVqVEr9BWKcqNFoxF6vx3a7zc1mYyC73a4MogBg7vs+z+czO50OW60Wt9stK5UKp9Mpj8cjq9WqDTBHnjAdxzGQZrPJw+HA31oulzbAWgLoA0CWZVBKIY5jzGYzdLtdE9DlcrFNrY98zobqOA6TJKHW2jg4nU5sNBpFDp6mhVe5rsvVasUwDHm9Xqm15u12o+/7Hy0gD8KatOd5vN/v1FozTVN6nkchxFuI6hsAAIMg4OPxMJCXdtTbR7JJCMEgCJhlGUlyPB4XfumozInrupxMJpRSRtZlKoNYl+m/6/wDuWAjtPfsQuwAAAAASUVORK5CYII=',
  2401. blank:true
  2402. },
  2403. {
  2404. name: 'Chrome WebStore',
  2405. url: 'https://chrome.google.com/webstore/search/%s',
  2406. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADT0lEQVR4nO2VT2gcZRjGf983U9du4ia7aYy4s8SEnooieBAVPCsWRFCiIsVL7VmoWKXX9iBUT8V/RTA2KkICIiJ4aSHooVBv1YaG7KrdDZoxu4nkz053dl8PO7O7k5lpd5qolz6w7Mz7zvc8z/t+3zsDd/A/QwEsLy/LzoRIKHRLJF1jWZYyAZRSIZLeWL/CSdb4MKOIbiXmum5kzjCMxCbMfoU9XFFKnRkfH5+OSpbL5VeBN4AHExnoFwMDA+8MDQ3NxOUty5quVqvN7e3t8/1y6iQG6vX6Cdu2j8Tlbds+4jjOm0k4Y6egX9zOtPjI5/MqUQf+DezKwG6q3xMDe4HbNrAX1UPCMQRordXYmv0cqa3h/l5skxQeQGWz7H/hFfRwNhGfAqhUKjctx7n0A/Vv5mhV/wKvcsFb4nfCZxBB50a4+7kpUo89GcspIhQKhfa3IJ1Oxz7YWrWpn/+EFIA2gqI7THTC62vI9Mfsf/gR9IF7b7pdCqBWq0U+UTv6EuK6Pcxh0e5ttCllmGSn5yLFc7lc/HvAXVxAGo1diSOCuA3ca1fjZKI7UDt9Erm2ECTtJY4Ujzbgh4zJgwydei8gHtuBL8w/90a8J9csLkZJhcdwpjTPB4cyFAc1Jy/ZwaTHmT3zPub9VsCEblQYvP76DvHg0dr6+zuczDOBWKgD35YvIwjfFwaCwgJoTfr5l1H3WVy4qjgxq3hrTnNxQeGaeZzsFN6uhsRBuGtzPtSBwBn4svQjp67Mdqp6+/Iqh0sbnUpHZ76msm5w/CvdQ9vFuy82sYabZIpTIXH/fyv3Gk7mKSDiDPxUXQrs60cPDbOxT7djStFSBmcvqhBt2yCcvaBpitHThaA4gFn/JWAtYODnteudbguwmjI4/KwFCKlHn+DcvKK0ojp5X9j3vLSiODevaQw+HimOCOaNYryBFWc9kBQRGl4x+yYOUrLDVfv0frxoQys1SfgMtKHcatiA4zjHAEZTGUSk8/Ppp57Os/3rIhOj3Yr9Ee/IeDcTo6CdpWCwp01i5vA0j4I3hmNjY5+Wy2V9wLznw99aK6F3dyVtMFv7g4mRG0hTd6i7reheTo60aG4sIW4rIi+4RobNzc1jlmV9FtmiO/iv8Q8bO7AiEMGc8wAAAABJRU5ErkJggg==',
  2407. blank:true
  2408. },
  2409. {
  2410. name: 'Firefox Add-ons',
  2411. url: 'https://addons.mozilla.org/zh-CN/firefox/search/?platform=windows&q=%s',
  2412. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAD3UlEQVR4nLWW3U+bdRTHP+dpFSllI6hzJmucEWiTZizTQtG5uRcgYRoS451eqBcmXHjhjf+B116Z6JIlvt0YExONAsqiw0zNKIWCkeTpYGrEFEIclDGElbbHi2elb89DW+m+V+3vvHy/Oe15EQoxtdBGeqcblSXC/nFEFDtEEx4y65dQeQEYo4XXCQQ2bH0BItdPo5kjuIxpQn6z0CQAqAqT8XfJ6lt5i0zS6jpFe/udomSzy01sJb8BPVOQ5mdaGCgToepmIn4F9NmCvB/Q7X8TkQyAAVBGbgV3kUw/XUa+vTZcTA6gJ0kyimk2Fz1PXj9RRG7lHSISfy/31SB2o72MPC/3wO7HuRUv28lRlOfsfe+KmFvx5sOzTfauOkRkPmgJSKW67BMCGSybaTazsTqK6ilH35yIjdVvdyuh0unsmg0BCNfMs6A/2DqJKMovCH5UH9qbvChwBSGG6nnAbevicvXT1XFZUBUi8QlUnStRb4hE6faHEclaXTA/38AaPUi2CaWTrL4D6qojYRbkbYzsNBj/Ih0xQrIDuTYsxYT5Parn6ijgKuHAaTuTUfZi/YGO1Y3cwjFif7RUFjC34iXJCKoP15VetYXUnTGiNw6WmvI/wexyk9XnlVptX5gAdz897bdyD1YFogkP22vD95gcIIykvyucmAbRhIf0rWHnCVdnKD2sszusDDLrl8pn+70Woc+wzicAbmul2mxd4SYq72MQB21HeQPl0YrJRZKgHyL8inIUZQh4xEbF86iKGxgDXipJksXgJF2B+O7btHmRHR1DCe5B/jcu6SMUyO/86J8XyWwtoHiK+eUyImrQ3PoaIleLjSwXkQM8GUgg9w0Aaw7s2xjugdKDg9DRJRSzxHmKhoZXAAyCh27zQMsAwo8FDilbju62RUQ+txegI3S1/WavjfxRIzKDx9PHiceTlgCA44c3cR28gMiXQBrRj+1JAGTJ4X3ROUQ+A9IgP4G3l87HdqtYvgsWFxvx+bYck10zvwIdtGEZpydw1jFubsVL8NDtsijHgFJR/6QbSKUGQT9C1T5OjFfp7vjU8Zi1C9nTqipEzCs1DSmRLOg2KhHc/v7c2nVC+TYsxNTvvponpKphtZyeIb3wVCX3vQWEnvgL5IuaBOQgMkO4bXJ/AgCa/S+DjNZIPgve3tztvz8BQUnxoOtFhLEqyWfwNp0jfORmVe5VJQWrExKbX9+9dJ2yxfB6ewn6VqtNW7kCOfh8W7gODIKMO3hM0+g5Xws51FKBHOwuJ5EojY39hROuWlRfgRyOH97E22qNbWEHZIT7G/r+D/n+4TQRa8B/kvpzjBrBCDkAAAAASUVORK5CYII=',
  2413. blank:true
  2414. },
  2415. {
  2416. name: 'Userstyles',
  2417. url: 'https://userstyles.org/styles/browse?search_terms=%s',
  2418. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABqElEQVR4nO2XsWsTURzHP99fLoPUSWjqaOnuEBK6iA6ucQuVdHCw1Ek3d59/gasIrhlCECSugohLJVzR1SFjbAqCiFN793PxGlFj9WzvLf1OB/d77/N5j9973IkfEjzYs93PG3I2cVpAw6HGgrxvPRLAtHPFF9VIyoAZ+Bipv9K8PlAI+dH74uHyu/urHGRDoLlosjICvzFKhboXR68nAFbAdZjt/Au8dNyb7r7z8cbVVQALHoyDbOjO8qnD5xbLjg89BLPnu19uUsXKf3Hw5l76csNyz3uVw+cSm/a92yNFLQMa8QRo2J/O+WnH3WsWC14kOYlJDEJUgZUXbx5GFWg/mVyLKuD54auyY6M34ZnAmUCCFGIK6PiS49N6/OHvP8l+SvL16YUHZQcvbX0qfQMeCeRe/h4H/lsgehOaRBYLLikzXLNYAg4zA8axBISPzVE/loBLfTu/dXcgKa2cLqWd7bWBSSGv1ZMu0n51cPbNkm6QcgM4d2tvktST9Up2QkrN6utvty/Nf04LiaXb99pgPaGR0PQkjqikDGkqMcLU69xZaxdwgG83NodGaQLg6QAAAABJRU5ErkJggg==',
  2419. blank:true
  2420. }
  2421. ]
  2422. }
  2423. engineList_plus[1] = {
  2424. "status":3,
  2425. "version":1,
  2426. "engineDetails":['电子书',"ebook_xin",true],
  2427. "message":"由奔跑中的奶酪整理",
  2428. "engineList":[
  2429. // {
  2430. // name: 'jiumodiary',
  2431. // url: 'https://www.jiumodiary.com/$post$q',
  2432. // favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAABi0lEQVR4nJ2VsU4CQRRFzy66GCtLrWysjMbEyi+wNFHBmGDpH1jYWJtAq5WxpoFEorXxB6xs1CBBI4WJVhpNoPBayMAuuzOw3FcwvMe5eTOzy0OYIGCHMk3ayBJf3FMmTxCieotN6lZwMOpsRQzIUBwZNlEk0zdIjwtR7BqQGwsXIicg4HVsgxYBFGzlGS1pepjFHlSSCiUZ/ehQS9rVerJB1eOZeUKapINNXjz14jMbzdhxWImn5oi2dCa3FuObCH85HoJL0o3mIgYeMt0o3qBVbaZ659LlfpOOyCHza5/ewsPjKJXJv0L7ORjhDIwSDnGi+/kxAv6QfAsIvY+At5SxGSxbkEshtKqanpS1PwcmGgN4xfE6hZ4DowXqlitLkh9PlVJe42e8rYvIBr4dG6ANj0mF/ZBBw2Xw7HOX1NY5Hlfd9b2r/1ufmq22gcc18OYyqA39U53Smr3aIosg7zJwRt4MltJYeEn0R9tJavw0NNqEYDvVcM31uH6WgAJVmnSsYIcmVQrh8f4HufpcPqh3SFcAAAAASUVORK5CYII=',
  2433. // blank:true
  2434. // },
  2435. {
  2436. name: 'forfrigg',
  2437. url: 'http://forfrigg.com/#gsc.tab=0&gsc.q=%s&gsc.sort=',
  2438. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAFQUlEQVR4nMWXT4tlSRHFfxGZee97VdXaOroRBuYbCLpwIaMtbl26Ety7HETQxegX8A8uXLkVP4AwMAgiyKCCqMwoCuKgojjWOI12t1317s3MiHCRr9rpnq56U90LAx6XR76XcfJEnBM3JSIE4DOf/9IL6Y2ffuve2Y6LyCmRn7vF04aKnIvw4kvf+8a3H12TiBAR0U/futU/9fzH+N1vXuPDH/kob56e8tvXfs1nv/JdTDMybZimmQCSCN0DiWA7ZwDWZuSkuEE1Y8qJtXUc+Nvrf+DVV37sL3//m1NE+NsB5ItnRPCn1//I7dtv8de//Jnbt98C4Pf/+A+hGc2NMjdUhGrGunSmOdOqkbPSu7OZM0vttOZMRUmq7JbOsx98jpKT7vPVh9h55Dm+qCIiAIRDb8E8JZII5kavDiIUVUpO4+QetOZYD25sC/OUWKshArUaIvqOPJcCeKhGCtOcuH/ecIIIcAIBzpZKSoIIEFBbZypK92C3jOQi+/VL8lya+CLWarQ26AVwBxxKUXJSlrXjBkiwmQvzlDk7b8yTgkBrRsTl++fLl/YIdX88oHdn7UYQrIuBQskJc8Mddkuj5oQq1OpMKdHE2WwuT3OQARVISVHAAsKCpON0SZXWjW6BR5BzorcOIkgSlto4OS7Uak8OYLd0rAUhMGfh5o2ZIPAY/eEetOqEQ107200ZElwac8ncvbcOwJfEwRLklEhFqatRNoV791dKSeRkJBGON4W1GggIwm7p5KxsN4XajHnKXJTwiRjo3tktFSMwC3IRWuu4D4nulqGOpEJtxnaT6N1Y1g4hIOBP04RzzsxHE0uH6UgokanitO4jcUrjJCIcbTIEnBxPuAVLNVRGoz4xgJITZpCTEAFrdcwckSBrwnHMRj/U1QenaxCM/4gIu6Veuv/BEpwtjbPdikdQu9PMSVmYS2K3jnqHBOFjXYDaHLOg9+B8167c/7AMFTZTZlk6WYWswhgnylwUAqaUEFGmSShJOd4WFCEnmKe0b8THx2EVqGI+ZoGKoCr05qzRcGNvw0LrRm3BWV9JIsxTwh26Ofo2L742AE1KUqEFnC2dpELKwpQTZ2vHHMw6qso8Cds5YR7kJKzNqdWxhyfw9QC4GVOZmEomNOPuRATNgqJK7cZcEq0HhLP04HibaT0oScknBb9ChwcBIEK3YLHG0VHBI8Y7QbNhQONHlCQESgnHA5KCuUOMGXJZHGxCsxhzwIKIQBDOzitTVt57Y0JEhkSB3hxNym7XHshQk1zpAwcBjLnfuHFUEITejZIT1ZxlNbZzQlVQgXmTEAm224wA988bEXBFDx4uQVLBXHCH5n00ZRLqOvzfHTSCtTllEnDoPijPOdFteMITM9B8jNnmTk46qO6BxTAfGVZAKcK6Gr075mNkBwEB7k/RA0rg4eNkFnh3WjOyKrI3JXNHRJhKIgAJwczJ+9LkdzULvPG+9z/Dm6dvcOM9N7lz59+oKh965gTNE5pnQhKigvcgZYEQLIb9XkhN9i+IIkJE4A7JlsMAvJ3zq1/+AoCf/+wVAMrJB7C/v8rjSni1wz8c5+s6WLwKQN7exOoOLVsAnv/kJ3jxq19jXddrpHp81O584ctfvxKAR0QNb5OvQ8M/+eFL/OjlH/Dsxz83Zq0oSALNoBlJGUll/5mQVNBckIs1/V/d651T1rWeAu+g4QEA0/k7mpYXvC0Ko7Onacty985TMxARt+/+659ffByAB3dD4AQ44t3Y8/WjA+fA/UfvhnJxO96DyAxpHpTnNWJ/laE/mvwhAP+v+C9sz+VdwyQu0gAAAABJRU5ErkJggg==',
  2439. blank:true
  2440. },
  2441. {
  2442. name: '威锋网',
  2443. url: 'https://s.feng.com/index.php?srchtxt=%s',
  2444. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIAAAAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAsdJREFUeJyNkl1IUwEUx3+73nbVTV13zaZlsw8VIyvbSkiyeimjHtKHIkSiwCAwhIiIoIceCqJeyqIg6qUoiIigDyOKCsUinPmxMpZmpubH5pz7crve7fZQSSuIztvhnP///M//HN3zL9OaMqOyUtaRKxv4n5gKK5zrCeAtkhEe2lJ5sMTIoX4NZ6/nvwhudI0x5ZhHToaAYALMAlhLjZx+rxCORP8JVtU4LaMxxJ+58HvRF5fodvUAEI6pOIciPOkN0eSa4ONwAABRTGHu2DdGxsEPiH5ABXxe8LU5mb+mmFa3l2tBA2ORcQDMjnymvbD46SgNjgzqNy9k3/kmJjZVoNvRltDiMRh69pZdmR/YsGUbjQYrEXczL2r2I5ksrL90hsRMFGlhGYlOH9e3zyUUDPCs+R26xptPtGHPJKWLjJSXr6ehSyTDnsDVeI3RVg+WiloE5Q0dZ0+w/dVTJOsKClq6ObWn5MdK9TVbZz1ock2g5qXzYGslaeZlFNbUIWWm4r7dTn71cbKLlqDMgRa/Ad9UCDnLmGxi50iALJtI6eF6YgEV962rtB6tZdIdYu2RGkyZ6WgqqFIqx+5+IpZg9hoA6AWJiA9K9uwkz74O5+V7yGuqkB12gsEp/AGJRDydeGCadr2e665gsgJ7joC/L05QA3NhLvLyfLKKV2GwptF74y2Pqg8w8nKQac84WTmZdAz6kgkcS+eR9vELk1/B3eam8/wVoqMfSLPEsFWtIkU00n32JOEBJ4piZnN6IJnAIIkcWR3B8/gzfXe6AcguL0M0yuizC5Hte8mdb6JEjlJncrN70wp0mqZpf77roxdOTly6jyc4g6WiFoDIwHuqlic4XFuJxWya7U0yMRJVuNA8TI/OiliwGke4n4MbFVL1IrYFG7AtyPlzVrKCi68H6SnLQxIgFIVPj72cW6lhX2b5C/grvgPjZxiC9n+r/wAAAABJRU5ErkJggg==',
  2445. blank:true
  2446. },
  2447. {
  2448. name: '我的小书屋',
  2449. url: 'http://mebook.cc/?s=%s',
  2450. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIAC2AQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAX1JREFUeJylk7Gq6mAQhL8NtxMDAdu/DphKUvgCQdKr8SG08DFSWsp5gxT2FrGNIAo2thY2lkqKaKHurY4ajxzk3oGFhf2Zf2bYFdd1lf+A9d2ICO/6jwlUH0Ke+98gIvx5NzDGEEURnucBMJ/PSZKEPM9L71QVec3AGMNkMsG2bbIswxiDMYbNZkO73S4RnE6nsgIRIQxDbNtmOBwynU4BGI1GhGGI53ksFgvyPKcoCm6324NARFDVu8woigDIsozBYMDxeCTPcy6XS9mv67r6Wl9fX/qM5XKpURSpiPysd3twvV6pVqs0m00ajQbdbhfHcWi1WqRpelcMlDNQVfr9PvV6nV6vx3q9BmA2m5EkCb7vk6bp3S487cH5fGa327Hf7wmCgPF4TBAEBEFAp9MBYLvd3j8qZVCr1VRE1LIstSxL4zjWV8Rx/MO/ZVkqlUpFi6J4jQHHcfB9H4DVasXhcCjNvzMQEfnnYxKRRwYvrB8RqGr5GlW1lPAn+Asf+sooQi/6SwAAAABJRU5ErkJggg==',
  2451. blank:true
  2452. },
  2453. {
  2454. name: 'Library Genesis',
  2455. url: 'http://gen.lib.rus.ec/search.php?req=%s',
  2456. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADfElEQVR4nM2XQWgbRxSGv5SFncNSDXQhexB4aQUVRhARDBFOwSEt2PRSU3pI6CFJL8mtLTmEnEoOxYRSQm/pLaE15FCa9NCSQy+FYmQwRQFTVmCCAqJsQIQR7GEWBtrDaFeqsaVdieI+GObtaPa9f2b+9+/o1KtXvb85QXvtJJP/LwA4ZSbv7Bsu33mEEIJACgJfUl+SrDVDLja9uQCcKsuBW/f3ebD9G3gC9Hg8CCs8/uoSb/qmFIDSR3D3RgNZPW0fPEDYFkcv+Wa7XTbcfBy4sBKCBikrBIFtSMHTvV7pWKWPYNJel9XcV0oT9RXL1XJHUJiEz2OHXqyIlUYbjdaA6ZMaS4SKZ0mplGC1UZzbhWaeufYDcX9oHwxgtO2zt3NfWE44sPXpOp9sVI+I9m8rdAQ7keHy7UdonYJwbcIMfpbcpIBr/SRFBhW63300E0AhEq7WHe7d2rBlZwBS+0PmG8Bxx2MCtNZHRJoTAMCHLZ9mawl0apOZ1LYESFIYDG2v7VgYyEJxSynhlXebdJ5281VKv0IYSKQnEA5oA/FAEUUv2VyrF4pZugy/eLC/kPQuDCCzP/sO8cCWpUo0w0QjRvvpCoEUEPhyJtCZR/BLO2E36tHpxvQGGqUUOhkRT2twxHhyXhHjcem7PL539ViBmroD17/e48n3u1bzHWGDZ5Az1h9ejjnUD4a03nmbn7beOzLH1B349uYKwRuC+9u74LnjWp80M1kV2VgGwgVP0IvVsTlmluGdqw1ufHwOBlnyUfnlySdAOIz6CbHCVsfcADIQuQbAeMWOa0GJETCyXZoAZCD05WIAALauXxh57pgLJp0QIcYA9chPUhhoNs6Fx8YtLERnaw71xhLRXjcnpAwqNGsBzbcClqqS0JdIKZCeQCWaqBfzoq/4/FJtcQAAV9brPEw0G2t11lshZ2tHvW7Y2Y9ZbXgsV33AnxpzoQvJYfvx9wEPf+7Q/rXLZzfXuT1l5ZmV2oFJex479AaKZwcx7WcxnShGxUMb0RMoVexrWBjAX8rj2pdP7I1Ia5QaES9TPYHVCgdQKULMCFgWgEo0nb0XNhHYMvMgr4r8nmA1YG0lLBS3cBkuVw1B7TRkWzspRnp8DyAesrl5houNYl/LUiT848Bwd7tNdBATJzpXO+kJAl9QDwM+OB/yfms68+cG8F/Yif85/QdlMHLuJQQjHQAAAABJRU5ErkJggg==',
  2457. blank:true
  2458. },
  2459. {
  2460. name: 'B-OK',
  2461. url: 'http://b-ok.xyz/s/?q=%s',
  2462. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEN0lEQVR4nOWWTWxUZRSGn3O/+W3Lj7VtaGlri1UUBEy6IPEnRBMTiYFVW6MmJmDUGHDjlo3EpRsTDQmJUSORhYCYYnDhQkCNhJ8FhM4ChKFUBEMJUjrTzsz9vuPiOkOnc6ftlKILz2Ly5TvvOe97zz2578D/PaTWgp7D5+PxTKxXPdoEbUc9dWovR9T83tjceeboc+IvuIDH96U3esIWlD5EZqlRpyq7UftFauDhE/cmQFWe2H+lV8X9CNIwF7GlUrgRcaw/O9CVnpeAtQd+a7EaGQFitRBXCFH+Wqxe2/GBzomwvBd2ufLb4TbfmV33Sg4gwtIxse+v/fJafWh++kWwZNGJsHetxR+pLJwpB6Cq2VR/d4WIigkkMtHXiuRWwVfFE0gYoSluaEka6iMSEN7lpCHi0ZI0NCUMES/I+6o4LU5C6lZ9PfzMjBNYvT/9Ccg2gJgn/LK5g4SREmjCKqpQFwluPjs/RmvSsLGjHqeQ9R1RT4ibIO8UxgqOpw+NIMEUfFS3pwZW7C5yRsrHJP0ioApL4x5JI1wcKzB4ZZw/sparGR+nyprGOM8uS7L10cUAHLw8zrHrE4xkfOojwuoH4rTWGV5sr6c5YYh5QsEpIhJR4U2gUsCaAyPtTm1LcaweglXlw7O3+PnP8gU+dyvPngtjpPq6uJmz7Dh1E2/KLE+P5gDIW+WNlUvKxixI70OfpxPDW7onYcoOOLXrp7+fqhsFiAhOFasaDijWh0Rysekpnj2A3sGrdapsm3uL2hDTwzj7VpmAfME1gnbW3GmWqC5NHuk5fD5eEmCt60JYtuACqikQ7TH5+IMlARiNCWJCsQutCkAlavJ+pCRA8O4o5EKx90OAaCaGnSgJUMst0PH7wVUlbrrJRdmSgNRQxyVROfrv8cuhs6+3ZkoC2ClOhV9nK1OCr2S1nNPq+XKwniweS1/CzB39tGGRfDwV5wEvLK9jU2c9jf8YkRG4lrWcHJ0MGgjseLKRtY0xmhIG38H1CZ/RSUtzMnSvGervPlI8TzOjyzkgpkBzwnDkpfaywpwN3C051Q0VPAmePmcD5yyaUTHWfTOMvTuZ60N9Xa0VEwBw6Mse7BGkYXTS8tTgCDmnZH1FUYq+qChLooafNrWT9ZUN3wW4qXlBWBQVBCmRK5p2YjZP5SwTUKgrfB/Pxr4C3ga4XXAIEDxQuaWMFxzvHb/B7bzDV4hIeR4g4yugpUpP5aNUX+c5KpDTYtW+9EURWRGWm3cox4b6uzZMvw79T6jCu6qMLCD9Cet5tZvd6n3pHxCeBwkVOmsoOYS9Q31dW6tBZmwc1cKrKB/Mj1wVZXsiFt0+E2xOXtO7+1Q009S0xii7FB4TWBLKCTdE9YyqeSc11HGJneJm612T2a07mF6a93WlIK8g0iFKmwqKckUg7am3N5YwF09vXp6tpe9/Gn8DQrStezS4ePUAAAAASUVORK5CYII=',
  2463. blank:true
  2464. }
  2465. ]
  2466. }
  2467. engineList_plus[2] = {
  2468. "status":3,
  2469. "version":1,
  2470. "engineDetails":['网盘',"netdisc_xin",true],
  2471. "message":"由奔跑中的奶酪整理,https://www.runningcheese.com/resources",
  2472. "engineList":[
  2473. // {
  2474. // name: 'jiumodiary',
  2475. // url: 'https://www.jiumodiary.com/$post$q',
  2476. // favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAABi0lEQVR4nJ2VsU4CQRRFzy66GCtLrWysjMbEyi+wNFHBmGDpH1jYWJtAq5WxpoFEorXxB6xs1CBBI4WJVhpNoPBayMAuuzOw3FcwvMe5eTOzy0OYIGCHMk3ayBJf3FMmTxCieotN6lZwMOpsRQzIUBwZNlEk0zdIjwtR7BqQGwsXIicg4HVsgxYBFGzlGS1pepjFHlSSCiUZ/ehQS9rVerJB1eOZeUKapINNXjz14jMbzdhxWImn5oi2dCa3FuObCH85HoJL0o3mIgYeMt0o3qBVbaZ659LlfpOOyCHza5/ewsPjKJXJv0L7ORjhDIwSDnGi+/kxAv6QfAsIvY+At5SxGSxbkEshtKqanpS1PwcmGgN4xfE6hZ4DowXqlitLkh9PlVJe42e8rYvIBr4dG6ANj0mF/ZBBw2Xw7HOX1NY5Hlfd9b2r/1ufmq22gcc18OYyqA39U53Smr3aIosg7zJwRt4MltJYeEn0R9tJavw0NNqEYDvVcM31uH6WgAJVmnSsYIcmVQrh8f4HufpcPqh3SFcAAAAASUVORK5CYII=',
  2477. // blank:true
  2478. // },
  2479. {
  2480. name: '百度网盘',
  2481. url: 'https://pan.baidu.com/disk/home?#/search?key=%s&vmode=list',
  2482. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAGQUlEQVR4nMWXX2wcVxXGf+furGfX63jjxnVsJ5t1mj82LnZIIWmbBJWiJkUQUCuKkIAHSJEoCip9KilI5RFeUOEhRUCDKoJAvCAhEHH+NE2ryg1piKFt3Nq1izfJ2vHW2ziJx/bszNzDw9hJEzu1oVF7nubhfvf77vnOufeMALzZ18fU1FRyVS53v+u6u13X3YJIBlXhZoSIour5vt/t+/7eM2fPHkyn00FbaytSKpWY9v3aZcuWPeZWVe1OJBINN4X0BhFFUcmvVPaWy+Wfp1z3EoePHHE8z3vSWlvRDymstRXP8548fOSIQ7lc3hmG4fkPi3w2wjA8Xy6Xd8rExMSBTCbzuf81lVYhjOJvJwHm/6gWz/O6JAiCccdxsosFTfhwqmA5OaS8PaYA3FYvfLJFuGOVYUlq8QLCMLwoQRCEjuMkFgM4OWTZ3x1xcsgyFYDG/IhAKgmbWgzfuDvBptVmsQIiCYIgchxnQcTxgYif/C2gUFYSBtDYBphJv0BkIb9M2POFJHevW/hMYRhaZzFKhy8oTx2oUChZEgY0hKUZoaXeoEBhzDLuKQmBQgmeOqDk61M01y1cGIsS8Nd/Brw1HGIAscK97Q7fvKeKVfWCKpwpW559ocKx3hCjMDBi+cvJCt/d7i6494Kpn/SV4/0BYWCJAktbk/D4l1w+njPUpoVstdCRS/D4F10+1miIAksYWP7RH+L5+sEFeNNK+WKEWEVUuWttgobaualdnjXcuTYRr7Mxxpu+CQIiC0ElIopAFBqzN/Z1eS0YtWgYZyGyC/LPXwOhhcGS0nMWCmNKMrjEtvETnEm28J9iK4rL9TIUGByJCFUw6SSeGH53XMnXKxtzsKZBmK/X5ggYGYd9L1leGlBKl+NWS1Y1sdmc56tDv+Sdo/cyuuk7NLZc+2b1FS0vn0mQyNZgHIMH/PEEGGNpWALb1goPbzM0LX0fAWffhZ/+3fLyQOydSJz2gCTTppqGcJT6N/7E2Z+VGPraHhrXNCFq6T1n+cMrhuLlZNymNhYugFgojcOfTyoj45Y9nzfkbplHwHQA+16wdPfH/awKdTWwfjnkLp1my+mDWFUwBvfV5zk6Usdzax8hSqYYs2nCRAIjYC1k09DaJCQM9I0oF7z4MN39yr6MZc9OQyp5nYA3h5VjvYrR+AQbW4Td24X1jZAK8nibv8/wr39BMHgaY4TNF57jxXOfodC4hap0EqMxeWsTfG+7YUNeEKD/vLL3sNIzpBiBY73KA3con8jHVWRkppr6hmFiErBwaw08ukPYmBcyrpCoWULtnVtZ8chjJGrrQC2BU006myGZcsGCjaBjhfDjBw1b1ws1LmRc2JgXHt0h3FoT7z0xGXPNWmwgTnexrGgUX7PtzUJb89x2y9zeSWpljnJyOftv+yH92U9hIotG0LlS+NED8+PamoX2ZkFD0GiGS6+zwNpYIRqrMvO0jABj6Ry/z+/iX9l7kEixCp154YkHhfVN898Rxsyc1Mab2PfcD2Y2FY1ZQSzxXV5Uhkbn3mLnipM863ydnrrPxuQRdOaukk9VoBLOFTA0qgwU4/oSO8M1o9WZTUXbCshUwaQPxTH4zUHl2zsg3xA/OIPnlV8dyfJKcAvGxKfY0CI88WVhXbPQ/Yay/5jSVAcPbRXWNMYkhZLyzCGlOBZnsNqNuSC2/ooF7TlhS6tw6FT83j//b+X1gtKRFyILrw0p5csOAtgQOvLKnocM65qFix48c0jpGYyx3b1KR0vchq8VlHfGY/LIwpZOoT131aorAqpd2HWfUByD00OKMVB6Fw7PjF2zNWEVNqyGH3zFsH6m4NwkNC6N7ROF8kU42nMdzsLtLcKu+4Tq97zSc0ayt4rKvoPK8V5lYvpaL2ur4dMdwrd2CC3Lry24Qgl+22V58XXl8uS1uJoU3NUuPHy/sG7FVdzsSDZnKJ3yoWdAOdGnDA7HI9e6lbC5TehcLaSqmDemK/Dq2zGu/1zs8Zpm2NwqbFwrpK+bT8IwvPi+Y7lVCENAIJngSuUuFKoQRICC49x4ZPc8r8v4vr83iqLR+RYYgaokVDmLJ4d4bZUTY29EHkXRqO/7e82pnp4u3/efVtVg8RQfLFQ18H3/6VM9PV0f+c+pwEf7e/5fM4zdUv6k9qAAAAAASUVORK5CYII=',
  2483. blank:true
  2484. },
  2485. {
  2486. name: '盘多多',
  2487. url: 'http://www.panduoduo.net/s/name/%s',
  2488. favicon: 'data:image/x-icon;base64,AAABAAEAEBAAAAAAIAAXAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAd5JREFUeJylkz9oE1Ecxz+XnpKUlPxZEq7DDVeog1wU3OQKdmgnERoIUlFnNXQQdBHd4iJ0URRcWiWjLnZKN1O6BfRCF6EHZvCMCEkvf3yRNH0OwcPzkkW/y/v93u+97+/3/b3fU760B3IuOsO/oDsYoSZnVWZPhwnKlRpHPUExb00lmIkoqKMTGdj0eoLCo228vuDBjRXqjhuIm4bm26MTifo3a9V28PoCK2dw7/m7UNbimhWoKkTQaLYxjXme3L6Cnkmzs39AZfMWAGeuPQ4Rqn9e9PqCuuOiZ1P+qmfTIRl1x0XPpIiop1A6Yijnoiqrd1/Q+NYOZZiG66sX2CgsQ0cM5W98/tqSi+sledT9IaWUsvBwS77/eOjHF9dL8umbqu93xFAGerBnO+QMjUQ8BoCVMyi92oWbK5QrtYmVBAjMBY1EPOr7xbzF5Ytnxz05dEnEo5gLWoDA7wHAs7d71B2XRrM1tR96JuW/SndwHH5GgJf3r1J6vYtpaCydG8u4k7fweiI0G5GJWbIpqrYzlmVo2I5LMh5Dz6ZDZ5WOGMoPnxqUKzUazRZeX2Aa81RtBz0znoOq7bCUMwB8W8+m2Cgso/R/HsvvrQ47+wcTNU9DMh5j7dJ5lP/9zr8A5hvhBGvOuq4AAAAASUVORK5CYII=',
  2489. blank:true
  2490. },
  2491. {
  2492. name: '56网盘',
  2493. url: 'http://www.56wangpan.com/search/kw%s',
  2494. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAEbUlEQVR4nMWXaUxcVRTHf28WmM4MW1kLgqVQiqEVBNtKhagxVdCorba2JhZIjNZooo2p1ETbfrGNS+uaurbxg1ZNI9o0ktbSpI1RA4TSsLVICUyFsA7LwAwzzMyb5yce82A2QOL/09xzzr3n9+56RuB8hcT/KE2ogXFaI4/G51IafyfFMVlEa/XYxGnqx7uoHm6meriJfxwjCwYQgs1ASngMhzIf59nkQvTqcL9xLo/IuaFrHO78hTZr338DsDtpMydy9rBSawh5QIfo4uDNn/nA9Bsegq+uyp9jf3oJ3+W+4DO5JEm4PSKSND+BTq3l/exdfJZThgohKIDPPVCefC/vZj2NSpgdQJQ8nB9u5nR/LQ2WbsZdUxjU4eRGprEz6W52JG1Ep9LK8XtT72fEaeXNm1UBAeYtwTpDEg2FhzFqdLKt0zZIRctJ/hzv9DtQtmEV32x4jnuiMxTQj1z9kIvmVr/95i3BsXW7FclbJ3spqjsaMDlAu62fB+vfUyRTCyo+yn4GraAODeCuyNspjd8gtyfcdp66doJB50TA5DOa8jjZ3fQF3VNm2XaHMZntifmhAexJLkQtzJqOdV+gY2ogpOQzGnPZONBxRrFBy1OKggMIwEOx62XHlOjky54rC0o+o7ODjYpLqTgmC70qLDBAlEZPpiFBdly1mBgKcernyiWJ1Jjb5HaERkeGPsFnrAwQG2Yk3OsYtdtCv8186fqc/im6mMAAc3eqVZxeEoDVreyvEXzfebLV7nEqNs5KrXFJAHFhyv4OjyswgNlpxeb11XkRqUsCyItMU7Rv2X2/lDKATZymebJXduREpJBtWLWo5JEaHVtjc+T2wLQFk93sM1axMNXDTfJvjaBmf3rJogD2pj5AjNcjdtHciksSgwN82/cXdtEpt8tTing4bv28ToGUbVjFWxmPyW1JkjjZ+7vfeAVAj2OUU17BGkHFD7kvUuj1wATSmhXx/Fqwj0jNCtl2caSNP8Y6QgMAONR5llte6xWjNXBpYyWV6aV+bzOtoKYseQt1hQcVF47FbeeV66cDliU+K6LNUWu4tLESo0ZZgvU5xjk71Ej9eBfDzkmitXryItPYlpDPWkPivMGbJ3vYUntEcbpCAgDYGpvDmbyXiNbqA/AHV9VAA7uaPkeUPD79fkuympE2ttS+Td14l8/Sy5+kORP+ZFIB72Tt8BvvFwDghq2forojlLV8TaPFhMfPV0iSRIdtgH03vudjU43CJyDw2uoSnr/tPp99g5bls4GQqU+kMDqTTH0CERoddo+T7ikzdZYu2iZ7EZFQCyqq8l7miTlFyLTHTWnDcS6Pti8OYCGKUOu4vOkABVGrFXaz00px3VHabf2yLeASLFaTooNt1z6h1zGqsMeFGTmX/ypxXg/dsgAA9DrG2N74KVa3Q2Ffa0jk9fTS5QcAaJgwUdFyCvecdyDZqzhZVgCAqsEG3vj7J/koi5KHH/trZX/I/46XouOmCww6LexM2sRXPVeoHm6Wff8CcSai56TwP2UAAAAASUVORK5CYII=',
  2495. blank:true
  2496. },
  2497. {
  2498. name: 'Pan115',
  2499. url: 'http://www.pan115.com/search?key=%s',
  2500. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAB40lEQVR4nO2W4U0jMRCFvzlRwEIHkA6gBG47SEqASC6AiBKgAEtHB3eXDgglkA7iEpLtwPxY7zJr7GRvtSJIx0iRdsaemWfPeF7gfxcZ4uQtv8LnBnBiWA4FcDLQ71Z9L8NvXADecpFZmkb67z17WxGDS9r3AHgGfh4K/A9SimEVG3+MmGCQ9O2BJbBQegH8Dbb1Hr/NWAC2uobesgEuAoilGGYpJ28PBx5aAl3Lqbfs+jTiaADEMAdKoAqmgoENewLgLQVwFq1pvUqc0AHX1GVYA6sDt1Do9aakEgDcQjvdPkNWYijhCz3DP3QbqwBelT7j/bk13e+AG977ICX6GeoYrSQnobfcAQ9BrcRwqtZ2AWAjCzE8ZuJ4pSYn4Yc5EBrlXplip3PgBbgM+oO3lGIooyaca6dUcohuIAR4pXvCSYpI1C1VwBWwBXapJMBaDFephbYJvWVKXTOdfJ5lsfraJ8BMDE4MFST3OkhPSuiWYE19mgbAkxieco4BhIuSltGWbQCWj6GVqAR7HQfIKsUZnSYUg/OWBfVQKkYGkIzXhw2rTJA+9mzivgDakQkdGiaaDfrf06x5cn1G/NFH8dEBpOh4otbPchQb2TV1a9rNxjo2HTsxNbivUQI+0vG3fJq8AbQYmOhoQk+aAAAAAElFTkSuQmCC',
  2501. blank:true
  2502. },
  2503. {
  2504. name: '胖次分享',
  2505. url: 'https://www.panc.cc/s/%s/td_0',
  2506. favicon: '',
  2507. blank:true
  2508. },
  2509. {
  2510. name: '小不点搜索',
  2511. url: 'https://www.xiaoso.net/mod/app_search?wd=%E9%92%A2%E7%82%BC&mod=app_search&oksubmit=true&okbtn=XiaoSo%s',
  2512. favicon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABd0lEQVR4nKWTTytEYRTGf+e9d8zcmZEFGzFLZWE1kW9gY2fHyiyVfAAUG7KULLGzIR/AAqWoSUqTjaKwoFBkmubPnfu+FlfjXi4z5SxP5zzneZ5zjgzl9gz/CBWZVIIxUHU9XE+jlPwKYH9P1Oqawb4u5iezZLrT1LVh/+Seha1zEnELT4cJS1BCqeyS3xgjmbQRAPEna22wlDC3nufw4iEE0pBQqXmcbY6RdGyUCCKCAAJYnxKWpofp7UyhRMIAlhJGhzMkHPtPvQC7KyOUKm4YoOpqZnNZ/JlNQiAV/7LOB6h7tKfbkBb6AZyE3ahVQEhTK2ECi1AATpvF+eUTWrd2U89v5QaIAt/pmdXTpgZqbShcvZByYmEGBvAwrG0X0CaahdYGpYTxxYNQXgULto9umFo+/tFsDNw9FBmY2CEdmA7fLhH8P3gv1ejqSNDf08Frscr1YxHbVpFb+vELWhvSToyq61G4fcUAsVjkz0UDBGkbmm/lA6vHg4K5ek21AAAAAElFTkSuQmCC',
  2513. blank:true
  2514. }
  2515. ]
  2516. }
  2517.  
  2518.  
  2519.  
  2520.  
  2521. var settingData = {
  2522. "status":1,
  2523. "message":"$相关说明$(status: 这个在将来或许很重要)..."+
  2524. "(version: 若有新功能加入,靠这个版本号识别)..." +
  2525. "(addSearchItems: 允许更新时,添加新的搜索网站到你的搜索列表)..." +
  2526. "(modifySearchItems: 允许更新时,修改你的搜索列表中的项目)..." +
  2527. "(closeBtn: 设置页面右上角的“关闭”按钮是否显示。true显示,false隐藏)..." +
  2528. "(newtab: 新标签页打开。0为默认设置,1为新标签页打开)..." +
  2529. "(foldlist: 折叠当前搜索分类列表。true为折叠,false为展开。)..." +
  2530. "(setBtnOpacity: 设置按钮的透明度,值为0-1之间的数,0为透明,1为完全显示,中间值半透明。注:-1为直接关闭按钮,关闭之前请确定自己知道如何再次打开它)..." +
  2531. "(debug: debug模式,开启后,控制台会输出一些信息,“关闭并保存”按钮将不会在刷新页面)..." +
  2532. "(fixedTop: 将搜索栏固定到顶端。 true开启,false关闭)..." +
  2533. "(fixedTopUpward: 固定顶端后,搜索栏下拉不会出现,只有上拉时才出现。 true开启,false关闭)..." +
  2534. "(baiduOffset: 在百度页面鼠标划过的菜单会出现位移,若有使用其他的style样式,可以修改这个来修复二级菜单的偏移)..." +
  2535. "(getIcon: 自己添加搜索后获取图标的方式。0为自动,能连接谷歌的情况下用谷歌获取,无法连接的情况下,域名加favicon.ico获取;1为域名加favicon获取,2为使用谷歌获取,3为使用dnspot的服务获取(不建议使用)。或者添加网址,关键字使用%s代替,未测试)..." +
  2536. "(allOpen:一键搜索,点击相关分类后,打开该分类下的所有搜索)..." +
  2537. "(HideTheSameLink:隐藏同站链接。默认开启,百度页面会隐藏百度搜索。如果想在同一个搜索网站,但是想通过不同语言来搜索, 可以选择false来实现)..." +
  2538. "(center:是否居中显示,主要是为了兼容脚本 ac 百度 : 0 不居中,强制在左。 1, 强制居中 。 2,自动判断)..." +
  2539. "(icon: 图标的显示方式, 0 关闭文字, 只保留图标, 1 显示网站图标,2 显示抽象图标。当脚本中不存在抽象图标时,显示网站图标)..." +
  2540. "(transtion: 是否有动画效果, true为开启所有动画效果,false关闭所有动画(包括模糊效果)。)" +
  2541. "(selectSearch: 划词搜索功能, true为开启划词搜索,false关闭)" +
  2542. "(engineDetails: 第一个值为分类列表标题名称,第二个值与enginelist相关联,必须匹配,第三个值true为显示列表,false为禁用列表。排列顺序与跳转栏上的显示顺序相同,可以用它将分类列表按自己喜欢排序)..." +
  2543. "(engineList: 各个搜索的相关信息)" +
  2544. "(rules: 已弃用--将搜索样式插入到目标网页,同脚本中的rules设置相同,优先级高于脚本中自带的规则。自带了360搜索,可仿写)...",
  2545. "version":5,
  2546. "addSearchItems":true,
  2547. "modifySearchItems":true,
  2548. "closeBtn":true,
  2549. "newtab":0,
  2550. "foldlist":true,
  2551. "setBtnOpacity":0.2,
  2552. "debug":false,
  2553. "fixedTop":true,
  2554. "fixedTopUpward":false,
  2555. "baiduOffset":-120,
  2556. "getIcon":0,
  2557. "allOpen":false,
  2558. "HideTheSameLink":true,
  2559. "center":2,
  2560. "icon":1,
  2561. "transtion":true,
  2562. "selectSearch":false,
  2563. "engineDetails":[['网页', 'web',true],['翻译', 'translate',true],['知识', 'knowledge',true],['图片', 'image',true],['视频', 'video',true],['音乐', 'music',true],['学术', 'scholar',false], ['社交', 'sociality',true],['购物', 'shopping',true],["下载","download",false],["新闻","news",false],['mine', 'mine',false]],
  2564. "engineList":{},
  2565. "rules":[{"name": "360", "url": "/^https?:\\/\\/www\\.so\\.com\\/s\\?/", "enabled": true, "engineList": "web","fixedTop":50, "style": "margin-left: 140px;margin-bottom:-10px;z-index:3001;", "insertIntoDoc": {"keyword": "//input[@name='q']", "target": "css;#tabs-wrap", "where": "afterEnd"}}]
  2566. }
  2567. // --------------------可设置项结束------------------------
  2568. // GM_deleteValue("searchEngineJumpData");
  2569. var getSettingData = GM_getValue("searchEngineJumpData");
  2570. if(getSettingData){
  2571. // console.log("本地存在列表:",getSettingData);
  2572. if(!getSettingData.status && confirm("设置发生错误,脚本将会复原出厂设置")){
  2573. GM_deleteValue("searchEngineJumpData");
  2574. window.location.reload();
  2575. }
  2576.  
  2577. // 查看本地配置信息是否完整
  2578. for(let value in settingData){
  2579. if(!getSettingData.hasOwnProperty(value)){
  2580. console.log("属性不存在: ",value);
  2581. getSettingData[value] = settingData[value];
  2582. GM_setValue("searchEngineJumpData",getSettingData);
  2583. }
  2584. }
  2585.  
  2586. // 获取版本,用于搜索列表更新
  2587. // console.log("当前版本号和目标版本号: ",getSettingData.version,settingData.version);
  2588. if(parseFloat(getSettingData.version) < settingData.version){
  2589. console.log("版本过低,开始更新,当前版本号和目标版本号: ",getSettingData.version,settingData.version);
  2590. // 1.96 更新 修改a站搜索链接
  2591. // if(getSettingData.modifySearchItems){
  2592. // getSettingData.engineList = modifySearchItemsFun(getSettingData.engineList,"http://www.acfun.tv/search.aspx#query=%s","http://www.acfun.cn/search/?#query=%s")
  2593. // }
  2594. // 版本3.02 添加 自用网站-搜狗表情
  2595. // if(getSettingData.addSearchItems && getSettingData.engineList.hasOwnProperty("mine")){
  2596. // // engineList.mine[8].disable = true; // 对于老用户,默认禁用的状态添加
  2597. // getSettingData.engineList["mine"].push(engineList.mine[8])
  2598. // }
  2599. // 4.01
  2600. // if(getSettingData.addSearchItems){
  2601. // if(getSettingData.engineList.hasOwnProperty("music")){
  2602. // getSettingData.engineList["music"].push(engineList.music[6])
  2603. // getSettingData.engineList["music"].push(engineList.music[7])
  2604. // }
  2605. // }
  2606. // 4.03
  2607. // if(getSettingData.addSearchItems){
  2608. // // engineList.mine[8].disable = true; // 对于老用户,默认禁用的状态添加
  2609. // if(getSettingData.engineList.hasOwnProperty("translate")){
  2610. // getSettingData.engineList["translate"].push(engineList.translate[8])
  2611. // }
  2612. // }
  2613. // 4.04 更改 b站图标
  2614. // 导致了5.23.7 的严重bug, 致使无法使用。原因是用户已经删除了相关列表, 但是脚本依旧去读取,出现了读取错误。
  2615. // if(getSettingData.modifySearchItems){
  2616. // getSettingData.engineList.video = modifySearchItemsIcon(getSettingData.engineList.video,"http://search.bilibili.com/all?keyword=%s",engineList.video[1].favicon)
  2617. // }
  2618. // v5 更改图标的显示样式
  2619. getSettingData.icon = 1;
  2620.  
  2621. // 更新本地版本 其他相关信息
  2622. getSettingData.version = settingData.version;
  2623. getSettingData.message = settingData.message;
  2624. GM_setValue("searchEngineJumpData",getSettingData);
  2625. }
  2626.  
  2627. engineList = getSettingData.engineList;
  2628.  
  2629. } else {
  2630. console.log("未发现本地列表");
  2631. settingData.engineList = engineList;
  2632. console.log("初始化:",settingData);
  2633.  
  2634. GM_setValue("searchEngineJumpData",settingData);
  2635. getSettingData = GM_getValue("searchEngineJumpData");
  2636. }
  2637.  
  2638. // 处理enginlist.detail的相关信息
  2639. var engineDetails = getSettingData.engineDetails;
  2640. //列表分类显示情况
  2641. var getDetails = engineDetails.map(function(value,index){
  2642. return value[2]?index:-index;
  2643. })
  2644.  
  2645. // 列表分类的key value
  2646. var getDetailsL = getDetails.length;
  2647. var details = [];
  2648. for(let i=0;i<getDetailsL;i++){
  2649. details[getDetails[i]] = engineDetails[i];
  2650. };
  2651. engineList.details = details;
  2652.  
  2653. reloadDebug(getSettingData.debug);
  2654.  
  2655. ///test -------------- 测试 start
  2656. debug("searchEngineJump test location.href: ",window.location.href)
  2657. ///test -------------- 测试 end
  2658.  
  2659. // 更新已过期的搜索链接
  2660. function modifySearchItemsFun(engineList,oldURL,newURL){
  2661. for(let value in engineList){
  2662. var item = engineList[value]
  2663. for(let i=0;i<item.length;i++){
  2664. if(item[i].url === oldURL){
  2665. item[i].url = newURL;
  2666. return engineList;
  2667. }
  2668. }
  2669. }
  2670. return engineList;
  2671. }
  2672. // 更新图标
  2673. function modifySearchItemsIcon(engineList,url,newIcon){
  2674. for (let i=0;i<engineList.length;i++){
  2675. if(engineList[i].url ==url){ //用户可能自己更改网站名称,所以此处用url来匹配
  2676. engineList[i].favicon=newIcon;
  2677. console.log("发现旧的图标");
  2678. }
  2679. }
  2680. return engineList;
  2681. }
  2682. // 更新本地 rule
  2683. function modifySearchItemsRuleFun(name,value){
  2684. var oldRule = getSettingData.rules;
  2685. for(let item in oldRule){
  2686. if(oldRule[item].name == name){
  2687. console.log("匹配成功, 更新 rule : ", name);
  2688. oldRule[item] = value;
  2689. GM_setValue("searchEngineJumpData",getSettingData);
  2690. }
  2691. }
  2692. }
  2693.  
  2694. // parseUri 1.2.2
  2695. // (c) Steven Levithan <stevenlevithan.com>
  2696. // MIT License
  2697. var parseUri = function(str) {
  2698. var o = parseUri.options,
  2699. m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
  2700. uri = {},
  2701. i = 14;
  2702.  
  2703. while (i--) uri[o.key[i]] = m[i] || "";
  2704.  
  2705. uri[o.ds.name] = {};
  2706. uri[o.ds.name][0] = {};
  2707. uri[o.ds.name][0]["key"] = (uri.protocol ? uri.protocol : "http") + "://" + uri.host + (uri.port ? ":" + uri.port : "") + "/";
  2708. uri[o.ds.name][0]["val"] = "/";
  2709. i = 0;
  2710. var tempsub = "/",
  2711. subs = uri[o.key[10]].substr(1).split("/");
  2712. for (var j = 1; j < (subs.length + 1); j++, i++) {
  2713. tempsub += tempsub === "/" ? subs[i] : "/" + subs[i];
  2714. if (subs[i]) {
  2715. uri[o.ds.name][j] = {};
  2716. uri[o.ds.name][j]["key"] = subs[i];
  2717. uri[o.ds.name][j]["val"] = tempsub;
  2718. }
  2719. }
  2720.  
  2721. uri[o.q.name] = {};
  2722. uri[o.key[12]].replace(o.q.parser, function($0, $1, $2) {
  2723. if ($1) uri[o.q.name][$1] = $2;
  2724. });
  2725. uri[o.aq.name] = {};
  2726. uri[o.key[13]].replace(o.aq.parser, function($0, $1, $2) {
  2727. if ($1) uri[o.aq.name][$1] = $2;
  2728. });
  2729.  
  2730. return uri;
  2731. };
  2732. parseUri.options = {
  2733. strictMode: false,
  2734. key: ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "anchor"],
  2735. q: {
  2736. name: "queryKey",
  2737. parser: /(?:^|&)([^&=]*)=?([^&]*)/g
  2738. },
  2739. aq: {
  2740. name: "anchorqueryKey",
  2741. parser: /(?:^|&)([^&=]*)=?([^&]*)/g
  2742. },
  2743. ds: {
  2744. name: "directorySub"
  2745. },
  2746. parser: {
  2747. strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
  2748. loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
  2749. }
  2750. };
  2751.  
  2752. function getElementLeft(element){
  2753. var actualLeft = element.offsetLeft;
  2754. var current = element.offsetParent;
  2755. while (current !== null){
  2756. actualLeft += current.offsetLeft;
  2757. current = current.offsetParent;
  2758. }
  2759. return actualLeft;
  2760. };
  2761. // console.log("engineList: ",engineList);
  2762. //xpath 获取单个元素
  2763. function getElementByXPath(xPath, contextNode, doc) {
  2764. doc = doc || document;
  2765. contextNode = contextNode || doc;
  2766. return doc.evaluate(xPath, contextNode, null, 9, null).singleNodeValue;
  2767. };
  2768.  
  2769. // 从函数中获取多行注释的字符串
  2770. function getMStr(fn) {
  2771. var fnSource = fn.toString();
  2772. var ret = {};
  2773. fnSource = fnSource.replace(/^[^{]+/, '');
  2774. // console.log(fnSource);
  2775. var matched;
  2776. var reg = /var\s+([$\w]+)[\s\S]*?\/\*([\s\S]+?)\*\//g;
  2777. while (matched = reg.exec(fnSource)) {
  2778. // console.log(matched);
  2779. ret[matched[1]] = matched[2];
  2780. };
  2781.  
  2782. return ret;
  2783. };
  2784.  
  2785. // 事件支持检测.
  2786. // 比如 eventSupported('fullscreenchange', document);
  2787. function eventSupported(eventName, elem) {
  2788. elem = elem || document.createElement('div');
  2789. var prefix = ['o', 'ms', 'moz', 'webkit', ''];
  2790.  
  2791. var l = prefix.length;
  2792. var pEventName;
  2793. var isFunction;
  2794. var setAttr;
  2795.  
  2796. while(l --) {
  2797. pEventName = 'on' + prefix[l] + eventName;
  2798.  
  2799. if (pEventName in elem) {
  2800. return pEventName.slice(2);
  2801. } else if (typeof elem.setAttribute == 'function') { // setAttribute 是元素节点的方法
  2802. setAttr = false;
  2803. if (!elem.hasAttribute(pEventName)) {
  2804. setAttr = true;
  2805. elem.setAttribute(pEventName, 'return;');
  2806. };
  2807.  
  2808. isFunction = typeof elem[pEventName] == 'function';
  2809.  
  2810. if (setAttr) elem.removeAttribute(pEventName);
  2811.  
  2812. if (isFunction) {
  2813. return pEventName.slice(2);
  2814. };
  2815. };
  2816. };
  2817.  
  2818. return false;
  2819. };
  2820.  
  2821. // 保存指定对象相关数据
  2822. var data = (function () {
  2823. 'use strict';
  2824.  
  2825. var cache = {
  2826. objs: [],
  2827. data: {},
  2828. };
  2829.  
  2830. function data(obj, key, value) {
  2831. var id = cache.objs.indexOf(obj);
  2832. if (id == -1) {
  2833. id = cache.objs.push(obj) - 1;
  2834. };
  2835. if (!cache.data[id]) {//初始化
  2836. cache.data[id] = {};
  2837. };
  2838. if (typeof value == 'undefined') {// 取值
  2839. return typeof key == 'undefined' ? cache.data[id] : cache.data[id][key];
  2840. } else {
  2841. return cache.data[id][key] = value;
  2842. };
  2843. };
  2844.  
  2845. return data;
  2846. })();
  2847.  
  2848. // 为mouseleave mouseenter事件做个兼容
  2849. // 需要 eventSupported, data函数支持
  2850. var mouseEventListener = (function () {
  2851.  
  2852. var support = {
  2853. mouseleave : eventSupported('mouseleave'),
  2854. mouseenter : eventSupported('mouseenter'),
  2855. };
  2856.  
  2857. var map = {
  2858. mouseleave : 'mouseout',
  2859. mouseenter : 'mouseover',
  2860. };
  2861.  
  2862. return {
  2863. add : function (type, ele, callback) { //事件类型,元素,监听函数
  2864. if (support[type]) {
  2865. ele.addEventListener(type, callback, false); //mouseleave,enter不冒泡,所以在冒泡阶段监听事件,不要担心子孙元素进出发生的事件冒泡上来。
  2866. } else {
  2867. var listener = data(callback, 'mouseELListener');
  2868. if (!listener) {
  2869. listener = function (e) {
  2870. var relatedTarget = e.relatedTarget; //mouseout,去往的元素;mouseover,来自的元素
  2871. // 当mouseout(离开ele)去往的元素不是自己的子孙元素
  2872. // 当mouseover(进入ele)来自的元素不是自己的子孙元素
  2873. if (!ele.contains(relatedTarget)) { // contains函数,自己.contains(自己) 返回true
  2874. callback.call(ele, e);
  2875. };
  2876. };
  2877. data(callback, 'mouseELListener', listener);
  2878. };
  2879.  
  2880. ele.addEventListener(map[type], listener, true);
  2881. };
  2882. },
  2883. remove : function (type, ele, callback) {
  2884. if (support[type]) {
  2885. ele.removeEventListener(type, callback, false);
  2886. } else {
  2887. ele.removeEventListener(map[type], data(callback, 'mouseELListener'), true);
  2888. };
  2889. },
  2890. };
  2891. })();
  2892.  
  2893. //获取已滚动的距离
  2894. function getScrolled(container) {
  2895. if (container) {
  2896. return {
  2897. x:container.scrollLeft,
  2898. y:container.scrollTop,
  2899. };
  2900. };
  2901. return {
  2902. x: 'scrollX' in window ? window.scrollX : ('pageXOffset' in window ? window.pageXOffset : document.documentElement.scrollLeft || document.body.scrollLeft),
  2903. y: 'scrollY' in window ? window.scrollY : ('pageYOffset' in window ? window.pageYOffset : document.documentElement.scrollTop || document.body.scrollTop),
  2904. };
  2905. };
  2906.  
  2907. function getElement(selector) {
  2908. if (selector.indexOf('css;') == 0) {
  2909. return document.querySelector(selector.slice(4));
  2910. } else {
  2911. return getElementByXPath(selector);
  2912. };
  2913. };
  2914.  
  2915. function mousedownhandler(e) {
  2916. var target = e.target;
  2917.  
  2918. target = getElementByXPath('ancestor-or-self::a[contains(@class, "sej-engine")]', target);
  2919.  
  2920. // if (!target || target.className.indexOf('sej-engine') == -1) return;
  2921. // 某些网站致下方的this无法达到原本的效果, 例 https://origenapellido.com/apellido-gavira/
  2922. // if (!target || !this.contains(target)) return;
  2923. if (!target) return;
  2924.  
  2925. var value;
  2926. if (typeof iInput == 'function') {
  2927. value = iInput();
  2928. } else {
  2929. if (iInput.nodeName == 'INPUT') {
  2930. value = iInput.value;
  2931. } else {
  2932. value = iInput.textContent;
  2933. };
  2934. };
  2935.  
  2936. // 如果搜索内容是通过某一网站搜索, 就去掉。 例: 0 site:zhihu.com 只保留0, 后面的网站会去掉
  2937. if(!getSettingData.HideTheSameLink){
  2938. value = value.replace(/site[^\s]+/, "");
  2939. }
  2940.  
  2941.  
  2942. // 编码 解码
  2943. // 对搜索词编码 (未做解码处理,浏览器自动处理) 网站1688采用gbk编码
  2944. var ogbk = target.getAttribute('gbk');
  2945. if (ogbk){
  2946. value = toGBK(value)
  2947. } else {
  2948. value = encodeURIComponent(value);
  2949. }
  2950. // // @name searchEngineJump-NextStage
  2951. // if (document.characterSet != "UTF-8") value = encodeURIComponent(value);
  2952.  
  2953. var targetURL = target.getAttribute('url');
  2954.  
  2955. // 一键搜索
  2956. if(getSettingData.allOpen && target.classList.contains("sej-drop-list-trigger")){
  2957. var list = engineList[target.dataset.iqxincategory]
  2958. // console.log("allOpen")
  2959. // console.log(list)
  2960.  
  2961. for(var i=0;i<list.length;i++){
  2962. if (list[i].url.indexOf("site:")<0 && matchedRule?.url.test(list[i].url)) continue ;
  2963. if (list[i].disable) continue ;
  2964. var href = list[i].url.replaceAll('%s', value);
  2965. GM_openInTab(href)
  2966. }
  2967. target.setAttribute("onclick","return false;");
  2968. return
  2969. }
  2970.  
  2971.  
  2972. // 如果有post请求
  2973. var postSign = targetURL.indexOf('$post$');
  2974. if(~postSign){
  2975. var f=getPostFormHTML(targetURL.substring(0,postSign),[targetURL.substring(postSign+6),value],target.getAttribute('target'))
  2976. target.appendChild(f)
  2977. target.setAttribute("onclick","this.getElementsByTagName('form')[0].submit();return false;");
  2978.  
  2979. // var postURL = parseUri(target.getAttribute('url'));
  2980. // console.log(postURL);
  2981. // target.setAttribute("onclick","return false;");
  2982. // GM_xmlhttpRequest({
  2983. // method: "post",
  2984. // url: target.url,
  2985. // data: targetURL.substring(postSign + 6) + '=' + value ,
  2986. // get data() {
  2987. // return this._data;
  2988. // },
  2989. // set data(value) {
  2990. // this._data = value;
  2991. // },
  2992. // headers: {
  2993. // "Content-Type": "application/x-www-form-urlencoded",
  2994. // "Origin":postURL.host,
  2995. // "Referer":postURL.host
  2996. // },
  2997. // onload: function(res){
  2998. // if(res.status === 200){
  2999. // console.log('成功')
  3000. // }else{
  3001. // console.log('失败')
  3002. // console.log(res)
  3003. // }
  3004. // },
  3005. // onerror : function(err){
  3006. // console.log('error')
  3007. // console.log(err)
  3008. // }
  3009. // });
  3010.  
  3011. } else{
  3012. //console.log(value);
  3013. target.href = target.getAttribute('url').replaceAll('%s', value);
  3014. }
  3015. if(selectSearchMode){
  3016. target.target="_blank";
  3017. }
  3018. };
  3019. //获取 POST 的表单的 HTML
  3020. function getPostFormHTML(url, value, newTab) {
  3021. //console.log(url,value,newTab)
  3022. var ospan = document.createElement('span');
  3023. ospan.style.cssText = 'width:0px;height:0px;';
  3024. var form = "" +
  3025. "<form method='post'" +
  3026. " action='" + url + "'" +
  3027. (newTab ? " target='_blank'" : "") +
  3028. ">" +
  3029. "<input type='hidden'" +
  3030. " name='" + value[0] + "'" +
  3031. " value='" + value[1] + "'" +
  3032. " />" +
  3033. "</form>";
  3034. ospan.innerHTML = form;
  3035. return ospan;
  3036. };
  3037.  
  3038. // 滑词搜索
  3039. function selectSearch(e){
  3040. // console.log("滑词搜索");
  3041. // console.log(window.getSelection());
  3042. let selectText = window.getSelection().toString();
  3043. let sejContainer = document.querySelector("#sej-container");
  3044. if(matchedRule) return; // 该界面已经匹配到相关规则, 说明是在搜索网站的搜索界面
  3045. if(e.button !=0) return; // 排除非左键点击
  3046. if (selectText.length < 1) {
  3047. if(sejContainer){
  3048. sejContainer.style.top = "-50px";
  3049. }
  3050. return;
  3051. };
  3052.  
  3053. // if(document.activeElement.tagName.toUpperCase() == "INPUT"
  3054. // || document.activeElement.tagName.toUpperCase() == "TEXTAREA") return; // 排除inpu和textarea内的文本
  3055.  
  3056. iTarget = document.body;
  3057. iTargetWhere = "beforeend";
  3058. iInput = {};
  3059. iInput.textContent = selectText;
  3060. if(sejContainer){
  3061. sejContainer.style.top = "0px";
  3062. return;
  3063. };
  3064. selectSearchMode = true;
  3065. addSEJ()
  3066. }
  3067.  
  3068. let iTargetWhere; // 如何插入
  3069. let iTarget; // 插入位置
  3070. let iInput; // 搜索词
  3071. let selectSearchMode = false;
  3072. // 滑词搜索
  3073. if(getSettingData.selectSearch){
  3074. document.onmouseup = selectSearch;
  3075. }
  3076.  
  3077. // iframe 禁止加载
  3078. if (window.self != window.top) return;
  3079.  
  3080. // 准备往页面插入列表
  3081. var url = location.href;
  3082. var matchedRule;
  3083. var marchedSign;
  3084.  
  3085. //先判断用户规则
  3086. marchedSign = getSettingData.rules.some(function (rule) {
  3087. if(typeof(rule.url)=="string"){ // 2020-12-19 todo: 重新导入用户配置文件后, 会解析错误的问题。 是由于用户保存的rule.url由字符串变成了空对象{},具体在什么情况下会导致变成空对象,并未排查
  3088. rule.url = new RegExp(rule.url.substring(1,rule.url.length-1));
  3089. if (rule.url.test(url)) {
  3090. matchedRule = rule;
  3091. return true;
  3092. };
  3093. }
  3094. });
  3095.  
  3096. // console.log(marchedSign,matchedRule);
  3097. if(!marchedSign){
  3098. rules.some(function (rule) {
  3099. if (rule.url.test(url)) {
  3100. matchedRule = rule;
  3101. return true;
  3102. };
  3103. });
  3104. }
  3105.  
  3106. if (!matchedRule || !matchedRule.enabled) return;
  3107.  
  3108. // var iTarget = getElement(matchedRule.insertIntoDoc.target);
  3109. iTarget = typeof matchedRule.insertIntoDoc.target == "function" ? matchedRule.insertIntoDoc.target() : getElement(matchedRule.insertIntoDoc.target);
  3110. iInput = typeof matchedRule.insertIntoDoc.keyword == 'function' ? matchedRule.insertIntoDoc.keyword : getElement(matchedRule.insertIntoDoc.keyword);
  3111.  
  3112. ///test -------------- 测试 start
  3113. // console.log("searchEngineJump test iTarget, iInput: ",iTarget, iInput);
  3114. ///test -------------- 测试 end
  3115.  
  3116. if (!iTarget || !iInput) {
  3117. console.log("脚本 searchEngineJump 搜索引擎快捷跳转 遇到了错误: ");
  3118. console.log("目标有误:\n iTarget:" + iTarget + "\niInput(keyword): " + iInput);
  3119. return;
  3120. }
  3121. iTargetWhere = matchedRule.insertIntoDoc.where.toLowerCase();
  3122. addSEJ()
  3123. function addSEJ(){
  3124.  
  3125. // 搜索列表的样式(此处没有 “设置” 的css样式)
  3126. let styleText = "";
  3127. // 配色
  3128. styleText += `
  3129. body {
  3130. --font-color-qxin:#333;
  3131.  
  3132. --background-avtive-color-qxin: #ccc;
  3133. --background-active-enable-qxin:#cff9ff;
  3134. --background-active-disable-qxin:#ffa2a2;
  3135. --background-hover-color-qxin: #EAEAEA;
  3136. --trigger-shown-qxin: #DEEDFF !important;
  3137. --sej-drop-list-background-qxin:rgba(255,255,255,0.7);
  3138. --background-btn-qxin:#EFF4F8;
  3139. --background-setting-qxin:#fff;
  3140. }
  3141. body[qxintheme="dark"] {
  3142. --font-color-qxin:#BDC1BC;
  3143. --background-color-qxin: #202124;
  3144. --background-avtive-color-qxin: #424242;
  3145. --background-active-enable-qxin:#274144;
  3146. --background-active-disable-qxin:#583535;
  3147. --background-hover-color-qxin: #424242;
  3148. --trigger-shown-qxin: #424242 !important;
  3149. --sej-drop-list-background-qxin:rgba(0,0,0,0.7);
  3150. --background-btn-qxin:#292f36;
  3151. --background-setting-qxin:#202124;
  3152. }
  3153. `
  3154. // 搜索列表的样式
  3155. styleText += `
  3156. #sej-container {
  3157. display: block;
  3158. position: relative;
  3159. z-index: 2;
  3160. // padding: 1px 5px 1px 5px;
  3161. line-height: 1.5;
  3162. font-size: 13px;
  3163. font-family: arial,sans-serif;
  3164. transform-origin: top center;
  3165. animation: sejopen 0.2s;
  3166. border-bottom-right-radius: 4px;
  3167. border-bottom-left-radius: 4px;
  3168. color:var(--font-color-qxin);
  3169. background: var(--background-color-qxin);
  3170. // transition:0.3s;
  3171. }
  3172. /* 滑词搜索样式 */
  3173. #sej-container.selectSearch{
  3174. position:fixed;
  3175. top:0;
  3176. left:0;
  3177. right:0;
  3178. z-index: 99999;
  3179. text-align: center;
  3180. transition: 0.3s;
  3181. background: #ffffffba;
  3182. backdrop-filter: blur(25px);
  3183. padding: 5px 0;
  3184. box-shadow: 2px 2px 10px #eee;
  3185. }
  3186. .selectSearch .sej-engine{
  3187. margin-left:5px;
  3188. }
  3189. #sej-container a{
  3190. border-radius:2px;
  3191. }
  3192. #sej-expanded-category {
  3193. font-weight: bold;
  3194. }
  3195.  
  3196. .sej-engine {
  3197. line-height: 2;
  3198. display: inline-block;
  3199. margin: 0 0px 0 0;
  3200. border: none;
  3201. padding: 0 8px;
  3202. text-decoration: none;
  3203. font-weight:500;
  3204. transition: background-color 0.15s ease-in-out;
  3205. }
  3206. .sej-drop-list a:visited,
  3207. .sej-drop-list a:hover,
  3208. .sej-engine a:visited,
  3209. .sej-engine a:hover,
  3210. #sej-container a:link,
  3211. #sej-container a:visited,
  3212. #sej-container a:hover{
  3213. color:var(--font-color-qxin);
  3214. }
  3215. .sej-engine:hover {
  3216. background-color: var(--background-hover-color-qxin);
  3217. text-decoration: none;
  3218. }
  3219. .sej-drop-list > .sej-engine:hover {
  3220. // background-color: #DEEDFF;
  3221. background-color: var(--background-hover-color-qxin);
  3222. }
  3223. .sej-drop-list > .sej-engine {
  3224. display: block;
  3225. padding-top: 4px;
  3226. padding-bottom: 4px;
  3227. top: 0px;
  3228. border-radius:4px;
  3229. }
  3230.  
  3231. .sej-engine-icon {
  3232. display: inline-block;
  3233. width: 16px;
  3234. height: 16px;
  3235. border: none;
  3236. padding: 0;
  3237. margin: 0 3px 0 0;
  3238. vertical-align: text-bottom;
  3239. box-sizing:unset;
  3240. }
  3241.  
  3242. .sej-drop-list {
  3243. position: absolute;
  3244. display: none;
  3245. opacity: 0.3;
  3246. top: -10000px;
  3247. left: 0;
  3248. min-width: 90px;
  3249. padding: 5px 0;
  3250. text-align: left;
  3251. font-size: 13px;
  3252. -moz-box-shadow: 1px 1px 5px #999;
  3253. -webkit-box-shadow: 2px 2px 5px #999;
  3254. box-shadow: 2px 2px 5px #999;
  3255. // background-color: rgba(255,255,255,.7);
  3256. background-color: var(--sej-drop-list-background-qxin);
  3257. backdrop-filter: blur(7px);
  3258. border-bottom-right-radius: 3px;
  3259. border-bottom-left-radius: 3px;
  3260. transition: opacity 0.2s ease-in-out,
  3261. top 0.2s ease-in-out;
  3262. }
  3263. @keyframes sejopen {
  3264. 0% {
  3265. transform: scale(1, 0.1);
  3266. opacity: 0;
  3267. }
  3268. 100% {
  3269. transform: scale(1, 1);
  3270. opacity: 1;
  3271. }
  3272. }
  3273. @keyframes iqxinsejopen {
  3274. 0% {
  3275. transform: scale(0.01, 0.01);
  3276. opacity: 0;
  3277. }
  3278. 100% {
  3279. transform: scale(1, 1);
  3280. opacity: 1;
  3281. }
  3282. }
  3283. `
  3284.  
  3285. // 工具列表动画
  3286. if(!getSettingData.transtion){
  3287. styleText += `
  3288. .sej-engine,
  3289. .sej-drop-list-trigger,
  3290. .sej-drop-list{
  3291. transition:none!important;
  3292. }
  3293. #sej-container{
  3294. animation:none!important;
  3295. }
  3296. .sej-drop-list {
  3297. backdrop-filter:none!important;
  3298. }
  3299. `
  3300. }
  3301. // 隐藏箭头
  3302. // if(getSettingData.icon){
  3303. // styleText += `
  3304. // .sej-drop-list-trigger-shown {
  3305. // /* background-color: #DEEDFF !important; */
  3306. // background-color: var(--trigger-show)
  3307. // }
  3308. // .sej-drop-list-trigger::after {
  3309. // /* content: ''; */
  3310. // display: inline-block;
  3311. // margin: 0 0 0 3px;
  3312. // padding: 0;
  3313. // width: 0;
  3314. // height: 0;
  3315. // border-top: 6px solid #BCBCBC;
  3316. // border-right: 5px solid transparent;
  3317. // border-left: 5px solid transparent;
  3318. // border-bottom: 0px solid transparent;
  3319. // vertical-align: middle;
  3320. // transition: -webkit-transform 0.3s ease-in-out;
  3321. // transition: transform 0.3s ease-in-out;
  3322. // }
  3323. // .sej-drop-list-trigger-shown::after {
  3324. // -webkit-transform: rotate(180deg);
  3325. // transform: rotate(180deg);
  3326. // }
  3327. // `
  3328. // }else{
  3329. // styleText += `
  3330. // .sej-drop-list-trigger {
  3331. // margin-right:8px;
  3332. // }
  3333. // `
  3334. // }
  3335. GM_addStyle(styleText);
  3336. // 夜间模式
  3337. let scheme = document.getElementsByTagName('meta')['color-scheme']
  3338. if(scheme){
  3339. console.log("搜索到相关选项, ", scheme.content);
  3340. if(scheme.content=="dark"){
  3341. console.log("设置为夜间模式");
  3342. document.body.setAttribute("qxintheme","dark")
  3343. }
  3344. }
  3345. // 列表对象
  3346. function DropDownList(a, list) {
  3347. this.a = a;
  3348. this.list = list;
  3349. this.init();
  3350. };
  3351. DropDownList.zIndex = 100000000;
  3352. DropDownList.prototype = {
  3353. hidden: true,
  3354. showDelay: 233,
  3355. hideDelay: 233,
  3356. aShownClass: 'sej-drop-list-trigger-shown',
  3357. init: function () {
  3358. var a = this.a;
  3359. var list = this.list;
  3360. var self = this;
  3361. // 关闭动画
  3362. if(!getSettingData.transtion){
  3363. this.showDelay = 0;
  3364. this.hideDelay = 0;
  3365. }
  3366. // 进入显示
  3367. mouseEventListener.add('mouseenter', a, function () {
  3368. clearTimeout(self.hideTimerId);
  3369. if (self.hidden) {
  3370. self.showTimerId = setTimeout(function () {
  3371. self.show();
  3372. }, self.showDelay);
  3373. } else {
  3374. var style = list.style;
  3375. style.top = parseInt(list.style.top) -6 +"px";
  3376. style.zIndex = DropDownList.zIndex ++;
  3377. style.opacity = 0.96;
  3378. };
  3379. });
  3380. // 离开隐藏
  3381. mouseEventListener.add('mouseleave', a, function () {
  3382. clearTimeout(self.showTimerId);
  3383. if (!self.hidden) {
  3384. list.style.top = parseInt(list.style.top)+6 +"px";
  3385. list.style.opacity = 0.04;
  3386. self.hideTimerId = setTimeout(function () {
  3387. self.hide();
  3388. }, self.hideDelay);
  3389. };
  3390. });
  3391. mouseEventListener.add('mouseenter', list, function () {
  3392. clearTimeout(self.hideTimerId);
  3393. var style = list.style;
  3394. style.zIndex = DropDownList.zIndex ++;
  3395. style.opacity = 0.96;
  3396. style.top = parseInt(list.style.top) -6 +"px";
  3397. });
  3398. mouseEventListener.add('mouseleave', list, function () {
  3399. list.style.opacity = 0.04;
  3400. list.style.top = parseInt(list.style.top)+6 +"px";
  3401. self.hideTimerId = setTimeout(function () {
  3402. self.hide();
  3403. }, self.hideDelay);
  3404. });
  3405. },
  3406. show: function () {
  3407. if (!this.hidden) return;
  3408. this.hidden = false;
  3409. var scrolled = getScrolled();
  3410. var aBCRect = this.a.getBoundingClientRect();
  3411. var thisBCRect = this.a.parentNode.getBoundingClientRect()
  3412. var style = this.list.style;
  3413. var top = scrolled.y + aBCRect.bottom;
  3414. var left = scrolled.x + aBCRect.left;
  3415. // 百度界面二级搜索会出现偏移的问题
  3416. // if(/^https?:\/\/www\.baidu\.com\/(?:s|baidu)/.test(url)){
  3417. // top = 26;
  3418. // if(document.querySelector(".AC-style-logo") && getSettingData.center != 0){
  3419. // // left += 0;
  3420. // left = aBCRect.x -thisBCRect.x
  3421. // } else {
  3422. // // left += getSettingData.baiduOffset; 不需要用户自己修改,直接写死
  3423. // left += -134;
  3424. // }
  3425. // }
  3426. style.top = top + 6 + 'px';
  3427. style.left = left + 'px';
  3428. style.zIndex = DropDownList.zIndex --;
  3429. style.display = 'block';
  3430. // 二级搜索居中显示
  3431. style.left = left- (this.list.getBoundingClientRect().width - aBCRect.width)/2 + "px";
  3432. setTimeout(function () {
  3433. style.opacity = 0.96;
  3434. style.top = top + 'px';
  3435. }, 30);
  3436. this.a.classList.add(this.aShownClass);
  3437. },
  3438. hide: function () {
  3439. if (this.hidden) return;
  3440. this.hidden = true;
  3441. var style = this.list.style;
  3442. style.display = 'none';
  3443. style.opacity = 0.1;
  3444. this.a.classList.remove(this.aShownClass);
  3445. }
  3446. };
  3447. // var pageEncoding = (document.characterSet || document.charset).toLowerCase();
  3448. // 创建dom
  3449. var container = document.createElement('sejspan');
  3450. container.id = 'sej-container';
  3451. container.className = "rwl-exempt";
  3452.  
  3453. // 没有匹配到样式, 说明是通过滑词搜索进入
  3454. if(!matchedRule){
  3455. container.classList.add("selectSearch");
  3456. }
  3457. // 添加 class 以获取目标网站相同的样式。
  3458. if(matchedRule?.class){
  3459. container.className = container.className + " " + matchedRule.class;
  3460. }
  3461. container.addEventListener('mousedown', mousedownhandler, true);
  3462. var aPattern = '<a href="" class="sej-engine" target="$blank$" data-iqxincategory="$category$" encoding="$encoding$" gbk="$gbk$" url="$url$"><img src="$favicon$" class="sej-engine-icon" />$name$</a>';
  3463. var dropLists = [];
  3464. engineList.details.forEach(function (item) {
  3465. // console.log(item); // 搜索菜单  ["网页", "web", true]
  3466. var category = item[1]; // "web"
  3467. var cName = item[0]; // "网页"
  3468. var engines = [];
  3469. engineList[category].forEach(function (engine) {
  3470. if(engine.disable) return;
  3471. var engineUrl = engine.url;
  3472. if (getSettingData.HideTheSameLink && matchedRule?.url.test(engineUrl)) return;// 去掉跳转到当前引擎的引擎
  3473. var a = aPattern.replace('$encoding$', (engine.encoding || 'utf-8').toLowerCase())
  3474. .replace('$url$', engineUrl)
  3475. .replace('$name$', engine.name)
  3476. .replace("$category$",category);
  3477. // 图标
  3478. if (engine.favicon) {
  3479. a = a.replace('$favicon$', engine.favicon);
  3480. } else {
  3481. a = a.replace('src="$favicon$"', '');
  3482. };
  3483. // gbk编码
  3484. if (engine.gbk) {
  3485. a = a.replace('$gbk$', engine.gbk);
  3486. } else {
  3487. a = a.replace('gbk="$gbk$"', '');
  3488. };
  3489. // 新标签页
  3490. if (getSettingData.newtab || engine.blank) {
  3491. a = a.replace('$blank$', "_blank");
  3492. } else {
  3493. a = a.replace('target="$blank$"', '');
  3494. };
  3495. engines.push(a);
  3496. });
  3497. // 非空列表
  3498. if (!engines.length) return;
  3499. engines = engines.join('');
  3500. // 展开当前搜索分类列表
  3501. if (!getSettingData.foldlist && category == matchedRule?.engineList) {
  3502. container.innerHTML = engines;
  3503. } else {
  3504. var dropList = document.createElement('sejspan');
  3505. dropList.className = 'sej-drop-list rwl-exempt';
  3506. dropList.innerHTML = engines;
  3507. // a:主搜索菜单
  3508. // dropList: 搜索子菜单
  3509. var a = dropList.firstElementChild.cloneNode(true);
  3510. a.className = a.className + ' sej-drop-list-trigger';
  3511. // 隐藏主搜索菜单的图标
  3512. if(!getSettingData.icon){
  3513. cName = "";
  3514. }
  3515. a.lastChild.nodeValue = cName;
  3516. dropLists.push([a, dropList]);
  3517. };
  3518. });
  3519. //将各个搜索列表插入文档中
  3520. dropLists.forEach(function (item) {
  3521. // console.log(item[0]);
  3522. // console.log(item[0].dataset.iqxincategory) //"web"
  3523. // console.log(item[0].querySelector("img").src); // 图片链接
  3524. // console.log(item[0].innerText); // 网页
  3525. // console.log(item[1]);
  3526. if(getSettingData.icon == 2){
  3527. // console.log(icon[item[0].dataset.iqxincategory])
  3528. if(icon[item[0].dataset.iqxincategory]){
  3529. item[0].querySelector("img").src = icon[item[0].dataset.iqxincategory]
  3530. }
  3531. }
  3532. container.appendChild(item[0]); //将搜索列表放入主搜索
  3533. document.body.appendChild(item[1]); // 插入搜索子菜单
  3534. item[1].addEventListener('mousedown', mousedownhandler, true);
  3535. new DropDownList(item[0], item[1]);
  3536. });
  3537. // 将主搜索插入网页中
  3538. switch (iTargetWhere) {
  3539. case 'beforebegin' : // 'beforeBegin'(插入到给定元素的前面) ;
  3540. iTarget.parentNode.insertBefore(container, iTarget);
  3541. break;
  3542. case 'afterbegin' : // 'afterBegin'(作为给定元素的第一个子元素) ;
  3543. if (iTarget.firstChild) {
  3544. iTarget.insertBefore(container, iTarget.firstChild);
  3545. } else {
  3546. iTarget.appendChild(container);
  3547. };
  3548. break;
  3549. case 'beforeend' : // 'beforeEnd' (作为给定元素的最后一个子元素) ;
  3550. iTarget.appendChild(container);
  3551. break;
  3552. case 'afterend' : // 'afterEnd'(插入到给定元素的后面);.
  3553. if (iTarget.nextSibling) {
  3554. iTarget.parentNode.insertBefore(container, iTarget.nextSibling);
  3555. } else {
  3556. iTarget.parentNode.appendChild(container);
  3557. };
  3558. break;
  3559. default:
  3560. iTarget.appendChild(container);
  3561. break;
  3562. };
  3563. // 兼容其他修改网页的脚本
  3564. if (matchedRule?.style) {
  3565. // 判断是否存在脚本 “AC-baidu:重定向优化百度搜狗谷歌搜索_去广告_favicon_双列”
  3566. if(getSettingData.center==2){ // 自动判断是否添加
  3567. // console.log("判断是否自动添加");
  3568. // console.log(document.querySelector("#myuser"));
  3569. // console.log(matchedRule.style_ACBaidu);
  3570. if(document.querySelector(".AC-style-logo") && matchedRule.style_ACBaidu){
  3571. console.log("检测到脚本:“AC-baidu:重定向优化百度搜狗谷歌搜索_去广告_favicon_双列” ------自动添加");
  3572. matchedRule.style = matchedRule.style_ACBaidu;
  3573. }
  3574. } else if (getSettingData.center==1){ // 强制添加
  3575. console.log("检测到脚本:“AC-baidu:重定向优化百度搜狗谷歌搜索_去广告_favicon_双列” ------强制添加");
  3576. matchedRule.style = matchedRule.style_ACBaidu?matchedRule.style_ACBaidu:matchedRule.style;
  3577. } //
  3578. // 判断是否存在脚本“知乎排版优化”
  3579. if(document.getElementById('SearchMain')){
  3580. if(document.getElementById('SearchMain').style.marginLeft=='150px'){
  3581. matchedRule.style = matchedRule.style_ZhihuChenglinz;
  3582. matchedRule.fixedTop = null;
  3583. console.log("检测到‘知乎排版优化’脚本")
  3584. }
  3585. }
  3586. container.style.cssText = matchedRule.style;
  3587. };
  3588. //兼容ac百度中lite选项, fixedtop和正常的不一样
  3589. setTimeout(function(){
  3590. if(document.querySelector(".AC-baiduLiteStyle") && matchedRule.fixedTop2){
  3591. console.log("检测到 AC-baiduLiteStyle")
  3592. matchedRule.fixedTop = matchedRule.fixedTop2
  3593. }else{
  3594. console.log("没找到 AC-baiduLiteStyle")
  3595. }
  3596. },2500)
  3597. // 由于与要插入网页的样式无法很好的兼容,更改源网页的样式
  3598. if(matchedRule?.stylish){GM_addStyle(matchedRule.stylish);};
  3599. //固定搜索栏
  3600. if(getSettingData.fixedTop && matchedRule){
  3601. // 判断是否需要只在向上滚动时显示
  3602. if(getSettingData.fixedTopUpward){
  3603. window.onmousewheel = document.onmousewheel = function(eee){
  3604. if(eee.wheelDelta>0){
  3605. fixedTopFun(matchedRule.fixedTop, matchedRule.fixedTopColor);
  3606. }else{
  3607. var obj = document.getElementById("sej-container");
  3608. obj.style.cssText = matchedRule.style;
  3609. }
  3610. }
  3611. } else {
  3612. window.onscroll = function(){
  3613. fixedTopFun(matchedRule.fixedTop, matchedRule.fixedTopColor);
  3614. };
  3615. }
  3616. } else {
  3617. window.onscroll = function(){
  3618. return true;
  3619. };
  3620. };
  3621. // 固定搜索栏
  3622. function fixedTopFun(height, color){
  3623. var obj = document.getElementById("sej-container");
  3624. if(!obj){return};
  3625. var objTop = obj.offsetTop ;
  3626. var objLeft = obj.offsetLeft ;
  3627. var current = obj.offsetParent;
  3628. while (current !== null){
  3629. objLeft += current.offsetLeft;
  3630. current = current.offsetParent;
  3631. }
  3632. var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
  3633. if(height){
  3634. objTop = height;
  3635. }else{
  3636. height = 0;
  3637. }
  3638. if(scrollTop <= objTop){
  3639. obj.style.cssText = matchedRule.style;
  3640. }else if(obj.style.position!="fixed"){
  3641. // console.log("固定到顶端");
  3642. // console.log(scrollTop,objTop,scrollTop - objTop);
  3643. var objstyle = window.getComputedStyle(obj , null);
  3644. var marginTop = parseInt(objstyle.marginTop);
  3645. var marginLeft = parseInt(objstyle.marginLeft);
  3646. var marginRight = parseInt(objstyle.marginRight);
  3647. //console.log(objLeft,marginLeft);
  3648. obj.style.top = height - marginTop + 'px';
  3649. // 如果之前未设置颜色,则默认设置为白色
  3650. // 2020-12-19 增加选项,可以通过代码自定义颜色,但是无法通过网站自动获取
  3651. if(color){
  3652. obj.style.background = color;
  3653. } else if(objstyle.backgroundColor === "rgba(0, 0, 0, 0)" || objstyle.backgroundColor === "transparent"){
  3654. obj.style.background = '#fff';
  3655. }
  3656. obj.style.left = getElementLeft(obj) - marginLeft + "px";
  3657. // obj.style.left = getElementLeft(obj) + "px";
  3658. debug("objLeft: ",objLeft,"marginLeft: ",marginLeft,"marginRight: ",marginRight,"getElementLeft: ",getElementLeft(obj));
  3659. // 知乎等网站的情况 利用 margin 居中
  3660. if(marginRight === marginLeft && marginRight != 0){
  3661. obj.style.left = marginLeft + "px";
  3662. }
  3663. // 淘宝等网站的情况 利用 text-align 居中
  3664. if(obj.style.textAlign === "center"){
  3665. obj.style.width = objstyle.width;
  3666. }
  3667. obj.style.position = 'fixed';
  3668. obj.style.padding = "0px 5px 0px 0px"; // 重置padding, 因为用了 fixed 定位, 没必要继续用padding,反而会带来遮挡
  3669. // if(document.querySelectorAll("input[name='sp-ac-a_force_style_baidu']").length !=0){
  3670. // console.log("检测到 ac脚本单列居中选项")
  3671. // if((document.querySelectorAll("input[name='sp-ac-a_force_style_baidu']")[2].checked)){
  3672. // obj.style.display = "none";
  3673. // obj.style.transform = "translate(-50%, 0)";
  3674. // obj.style.top = "none" ;
  3675. // obj.style.position = 'fixed';
  3676. // fixedTopFun2(matchedRule.fixedTopTarget,matchedRule.fixedTopWhere);
  3677. // return;
  3678. // }
  3679. // }
  3680. }
  3681. }
  3682. function fixedTopFun2(Target,where){
  3683. var obj = document.getElementById("sej-container");
  3684. var oTarget = getElement(Target)
  3685. console.log("fixedTopFun2");
  3686. console.log(Target);
  3687. console.log(where);
  3688. switch (where.toLowerCase()) {
  3689. case 'beforebegin' : // 'beforeBegin'(插入到给定元素的前面) ;
  3690. oTarget.parentNode.insertBefore(obj, oTarget);
  3691. break;
  3692. case 'afterbegin' : // 'afterBegin'(作为给定元素的第一个子元素) ;
  3693. if (oTarget.firstChild) {
  3694. oTarget.insertBefore(obj, oTarget.firstChild);
  3695. } else {
  3696. oTarget.appendChild(obj);
  3697. };
  3698. break;
  3699. case 'beforeend' : // 'beforeEnd' (作为给定元素的最后一个子元素) ;
  3700. oTarget.appendChild(obj);
  3701. break;
  3702. case 'afterend' : // 'afterEnd'(插入到给定元素的后面);.
  3703. if (oTarget.nextSibling) {
  3704. oTarget.parentNode.insertBefore(obj, oTarget.nextSibling);
  3705. } else {
  3706. oTarget.parentNode.appendChild(obj);
  3707. };
  3708. break;
  3709. };
  3710. };
  3711. }
  3712.  
  3713.  
  3714.  
  3715. // -------------------设置相关--------------------------------
  3716. // 设置按钮相关
  3717. var dragEl = null;
  3718. var dragData = null;
  3719.  
  3720. function SEJsetting(){
  3721. this.ele = document.createElement("div");
  3722. this.mask = document.createElement("div");
  3723.  
  3724. this.parentTemp = null;
  3725. this.editTemp = null;
  3726. this.online = null;
  3727. this.init();
  3728. };
  3729.  
  3730. SEJsetting.prototype = {
  3731. testabc : "hahah",
  3732. aPatternParent : "<div></div>",
  3733.  
  3734. init: function () {
  3735. // console.log("init...");
  3736. var that = this;
  3737.  
  3738. this.ele.id = "settingLayer";
  3739. this.mask.id = "settingLayerMask";
  3740.  
  3741. this.addGlobalStyle();
  3742.  
  3743. this.addContent();
  3744.  
  3745. this.mask.addEventListener("click",function(){
  3746. that.hide();
  3747. });
  3748. this.ele.addEventListener("click",function(e){
  3749. e.stopPropagation();
  3750. });
  3751.  
  3752. this.mask.appendChild(this.ele);
  3753. document.body.appendChild(this.mask);
  3754.  
  3755. // 绑定事件
  3756. this.ele.addEventListener("click",that.domClick.bind(this),false);
  3757. this.dragEvent();
  3758. this.setDragNode(this.ele); //设置拖动
  3759. // input[range]
  3760. that.rangeChange(true);
  3761. document.querySelector("#setBtnOpacityRange").addEventListener("input",that.rangeChange);
  3762. },
  3763. dragEvent: function(){
  3764. var that = this;
  3765. var odivsdrag = document.querySelectorAll(".drag");
  3766. [].forEach.call(odivsdrag,function(odiv){
  3767. odiv.addEventListener("dragstart",that.domdragstart,false);
  3768. odiv.addEventListener('dragenter', that.domdragenter, false);
  3769. odiv.addEventListener('dragover', that.domdragover, false);
  3770. odiv.addEventListener('dragleave', that.domdragleave, false);
  3771. odiv.addEventListener('drop', that.domdrop, false);
  3772. odiv.addEventListener('dragend',that.domdropend, false);
  3773. });
  3774. },
  3775. addContent: function(){
  3776. var aPattern = '<span draggable="true" class="drag">' +
  3777. '<span class="sej-engine"' +
  3778. ' data-xin="$xin$" ' +
  3779. ' data-iqxinimg="$img$" ' +
  3780. ' data-iqxintitle="$title$" ' +
  3781. ' data-iqxinlink="$link$" ' +
  3782. ' data-iqxintarget="$blank$" ' +
  3783. ' data-iqxindisabled="$disabled$" ' +
  3784. ' data-iqxingbk="$gbk$" ' +
  3785. '><img src="$favicon$" class="sej-engine-icon" style="padding-bottom:3px;"/><span>$name$</span></span>' +
  3786. ' <span class="iqxin-set-edit" title="编辑 Edit"><img class="sej-engine-icon" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAACDklEQVR4nJXVzUtUURjH8Y/mSNKkki2iwiApxHQ1q/6C+gusoCB6oxbRRqFNL4sWtRKqhVSLIDe1CqpNiwjKIilKLKKFEr2Z2qI0xxHN0+LOm+PMOPOc1T2H7/f5ncO991BdNer30zmxKrl0xV2zKJjRoy6aqkkvbbdVLPuUq+8+5uGXnVILki7qsxgtNDtrTNLcijHvrdYsft0/wQ8DZgSzeqMUDW4IJceYHcvwCd1ies0KZvWI1TnhIH6574Olgg0E74zmhZ902j304by4Cxp5LPjtQNmjy3XPVK2rgmCBCcGgdVXhdBgUBCMEwVMNVeIvBMFLifKC8vgrndFBlRJUhJcWFMd3ZfGuzFRxwWrdu3KTxQQVhi8lqApfKVhf0d4bc2/OckG9Pkur7r3TEw+1FRO0GxdM2Vc2/HHBgr1If935UTfigbt5+C27MeSo9+m5GJYitlCwWR2G8oQZ/FgWX1aFgnZMG852v5nFR4rhMn+2dDVJYFpKqy0SDksUhF9FsE0bWgyIa9bIanihoEUcDTrSz4ueOVMOLxQkzVkrZcaoNz755rmpcnihYNghm3w26Ys/5cGcIKgRBJDyqCIquj8C1PqKZvHK+qVrJ5bMRwmGterU64pkkZupWO3RjXkzUZj9+jVZMGK6IsEaHTbgjpOSUYZL/pa5m4qPIbtyznpHvJaqGB53O33h4T/3VzLuzDhE6AAAAABJRU5ErkJggg=="/></span>' +
  3787. ' <span class="iqxin-set-del" title="删除 Delete"><img class="sej-engine-icon" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAADAFBMVEUAAADsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVHsbVH///9VVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OUlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///8dej9TAAAAU3RSTlMAAABm7P/sZgAAABPO////zhQAAB/i/////////+IfAAAe4fvk4AAAAAAd/+Q3GxwAFR85FQBjz+LPY+v////r6//////rZM/h4c9jABUdHRUAAP0EcPoAAAEuSURBVHic7ZRnc8IwDIbdEUZHGB0kDsMOMcOMttBBB93Qvcj//y9VjB0Czh13/dz3ixT5OVmSYyMktLK6tm74oYxEMpVGUW1sbm2bM8DMZHP5OWBnd2+/YNnYAWHbKhRL5cocQKjrWFWPuSDmVS3HpUQu1eoNQkiTM9xqd7oHoG6n3cKMNyHcqNfQ4VGPUsr7nh0FbK/PIdw7PkGnZwOZNrqF9AfnF+jyaigLixYp/eH1Dbq9u4eAHyOAHh5HaPz0DCnjANjm5fUNvX98QoGCxyo5Fjmh0K/vH2hzAi0KnqnymMgJrU6gzemQBM+DZpX1/XBYUyAYTTAuZTUg+Aw8Zf+BvwJLR730sPTjXgD0H2YB0BUClXKpGAeE1y+fy2ZMfX12gdOpZMLQAfkE/AL7e5vGZF+dOQAAAABJRU5ErkJggg=="></span>' +
  3788. '</span>';
  3789. var details = engineList.details;
  3790. // 若根据数组长度获取,负数引导的为属性,不再length长度之内,所以来个大体的数字,当都为空时,结束循环
  3791. // var detailsLength = details.length;
  3792. var detailsLength = 99;
  3793. for (let i=0;i<detailsLength;i++){
  3794. var j = i;
  3795. j = details[j] ? j : -j;
  3796. if (!details[j]){break};
  3797.  
  3798. var odiv = document.createElement("div");
  3799. odiv.id = details[j][1]; // "web"
  3800. odiv.classList.add("iqxin-items");
  3801.  
  3802. var oDivTitle = document.createElement("div");
  3803. oDivTitle.classList.add("sejtitle","drag");
  3804. oDivTitle.setAttribute("draggable","true");
  3805. oDivTitle.dataset.iqxintitle = details[j][1];
  3806. oDivTitle.dataset.xin = j;
  3807. oDivTitle.innerHTML ='<span class="iqxin-pointer-events">' + details[j][0] + '</span>' +
  3808. '<span class="iqxin-title-edit" title="编辑 Edit"><img class="sej-engine-icon" src="' + icon.edit + '"/></span>'+
  3809. ' <span class="iqxin-set-title-del" title="删除 Delete"><img class="sej-engine-icon" src="' + icon.del + '"></span>';
  3810. odiv.appendChild(oDivTitle);
  3811.  
  3812. var oDivCon = document.createElement("div");
  3813. oDivCon.classList.add("sejcon");
  3814. var oDivConStr = "";
  3815. var engineListItme = engineList[details[j][1]];
  3816. var itemLength = engineListItme.length;
  3817. for(let ii=0;ii<itemLength;ii++){
  3818. var jj = ii;
  3819. if (!engineListItme[jj]){break};
  3820. var a = aPattern.replace('$name$', engineListItme[jj].name)
  3821. .replace('$favicon$', engineListItme[jj].favicon)
  3822. .replace("$xin$",jj);
  3823. // 添加属性
  3824. a = a.replace("$img$", engineListItme[jj].favicon)
  3825. .replace("$title$", engineListItme[jj].name)
  3826. .replace("$link$", engineListItme[jj].url);
  3827. if (engineListItme[jj].blank) {
  3828. a = a.replace('$blank$', "_blank");
  3829. } else {
  3830. a = a.replace('data-iqxintarget="$blank$"', '');
  3831. };
  3832. if (engineListItme[jj].disable) {
  3833. a = a.replace('$disabled$', "true");
  3834. } else {
  3835. a = a.replace('data-iqxindisabled="$disabled$"', '');
  3836. };
  3837. if (engineListItme[jj].gbk) {
  3838. a = a.replace('$gbk$', "true");
  3839. } else {
  3840. a = a.replace('data-iqxingbk="$gbk$"', '');
  3841. };
  3842.  
  3843. oDivConStr += a;
  3844. };
  3845.  
  3846. oDivConStr += "<span class='iqxin-additem'>+</span>";
  3847.  
  3848. oDivCon.innerHTML = oDivConStr;
  3849. odiv.appendChild(oDivCon);
  3850.  
  3851. this.ele.appendChild(odiv);
  3852. };
  3853.  
  3854. // 更多设置 菜单
  3855. var btnEle2 = document.createElement("div");
  3856. btnEle2.id = "btnEle2"
  3857. var fixedTop_checked = getSettingData.fixedTop?"checked":"";
  3858. var fixedTopUpward_checked = getSettingData.fixedTopUpward?"checked":"";
  3859. // var debug_checked = getSettingData.debug?"checked":"";
  3860. var transition_checked = getSettingData.transtion?"checked":"";
  3861. var selectSearch_checked = getSettingData.selectSearch?"checked":"";
  3862. var foldlist_checked = getSettingData.foldlist?"checked":"";
  3863. var allOpen_checked = getSettingData.allOpen?"checked":"";
  3864. var HideTheSameLink_checked = getSettingData.HideTheSameLink?"checked":"";
  3865.  
  3866. // var setBtnOpacity_value = getSettingData.setBtnOpacity;
  3867. var btnStr2 = "<div>" +
  3868. // "<span id='xin-reset' title='慎点,出厂重置'>清空设置</span>" +
  3869. "<span id='xin-modification' title='edit 分享自己的配置或清空配置'>配置文件</span>" +
  3870. // "<span id='xin-importing' title='importing 导入更为专业的搜索引擎'>导入</span>" +
  3871. "<span id='xin-selectSearch' title='划词搜索, 只有非搜索页面才会生效, 开关功能需要刷新页面'>" +
  3872. "<label>划词搜索<input id='iqxin-selectSearch' type='checkbox' name='' " +
  3873. selectSearch_checked +
  3874. " style='vertical-align:middle;'></label>" +
  3875. "</span>" +
  3876. // "<span id='iqxin-debugS' title='对设置菜单有一定的影响'>" +
  3877. // "<label>debug<input id='iqxin-debug' type='checkbox' name='' " +
  3878. // debug_checked +
  3879. // " style='vertical-align:middle;'></label>" +
  3880. // "</span>" +
  3881. "<span id='xin-transtion' title='动画,该设置需要刷新页面生效'>" +
  3882. "<label>动画<input id='iqxin-transtion' type='checkbox' name='' " +
  3883. transition_checked +
  3884. " style='vertical-align:middle;'></label>" +
  3885. "</span>" +
  3886. "<span id='xin-foldlists' title='将当前所在搜索分类折叠'>" +
  3887. "<label>折叠当前搜索分类<input id='iqxin-foldlist' type='checkbox' name='' " +
  3888. foldlist_checked +
  3889. " style='vertical-align:middle;'></label>" +
  3890. "</span>" +
  3891. "<span id='iqxin-fixedTopS' title='fixedTop 当滚动页面时,固定到页面顶端。某些页面的样式存在问题'>" +
  3892. "<label>固定到顶端<input id='iqxin-fixedTop' type='checkbox' name='' " +
  3893. fixedTop_checked +
  3894. " style='vertical-align:middle;'></label>" +
  3895. "</span>" +
  3896. "<span id='iqxin-fixedTopUpward' title='固定到顶端后,仅向上滚动才显示,需要刷新网页生效'>" +
  3897. "<label>仅上拉显示<input id='iqxin-fixedTopUpward-item' type='checkbox' name='' " +
  3898. fixedTopUpward_checked +
  3899. " style='vertical-align:middle;'></label>" +
  3900. "</span>" +
  3901. "<span id='xin-HideTheSameLink' title='隐藏同站链接,如果想在同一个搜索网站,但是想通过不同语言来搜索, 可以取消该选项'>" +
  3902. "<label>隐藏同站链接<input id='iqxin-HideTheSameLink' type='checkbox' name='' " +
  3903. HideTheSameLink_checked +
  3904. " style='vertical-align:middle;'></label>" +
  3905. "</span>" +
  3906. "<span id='xin-setBtnOpacity' title='设置按钮透明度,需要刷新页面'>设置按钮透明度 <input type='range' step='0.05' min='0' max='1' value='"+ (getSettingData.setBtnOpacity<0?-getSettingData.setBtnOpacity:getSettingData.setBtnOpacity) +"' id='setBtnOpacityRange'><i style='display:inline-block;width:3em;text-align:center;' class='iqxin-setBtnOpacityRangeValue' title='按钮 显示/隐藏(非透明)),请确定知道自己如何再次打开; 火狐非高级玩家建议别禁用'></i></span>" +
  3907.  
  3908. "</div>" ;
  3909. // "<div><span>test</span></div>";
  3910. btnEle2.innerHTML = btnStr2;
  3911. this.ele.appendChild(btnEle2);
  3912.  
  3913.  
  3914. // 添加按钮
  3915. var btnEle = document.createElement("div");
  3916. btnEle.id = "btnEle"
  3917.  
  3918. var btnStr = "<div class='btnEleLayer'>" +
  3919. "<span class='feedback' title='在 GreasyFork 进行反馈'><a target='_blank' href='https://gf.qytechs.cn/zh-CN/scripts/27752-searchenginejump'>Greasy Fork镜像</a></span>" +
  3920. "<span class='feedback' title='在 Github 进行反馈'><a target='_blank' href='https://github.com/qxinGitHub/searchEngineJump'>GitHub</a></span>" +
  3921. "<span id='xin-allOpen' title='后台打开该搜索分类的所有网站'>" +
  3922. "<label>一键搜索<input id='iqxin-allOpen-item' type='checkbox' name='' " +
  3923. allOpen_checked +
  3924. " style='vertical-align:middle;'></label>" +
  3925. "</span>" +
  3926. "<span id='xin-centerDisplay' title='center 居中显示。主要是兼容AC-baidu:重定向优化百度搜狗谷歌搜索_去广告_favicon_双列'>居中:" +
  3927. "<select id='iqxin-center'>" +
  3928. "<option value='original'" + (getSettingData.center == 0?"selected":"") + ">默认 ▽</option>" +
  3929. "<option value='force'" + (getSettingData.center == 1?"selected":"") + ">强制 ▽</option>" +
  3930. "<option value='auto'" + (getSettingData.center == 2?"selected":"") + ">自动 ▽</option>" +
  3931. "</select>" +
  3932. "</span> " +
  3933. "<span id='xin-newtab' title='open newtab 是否采用新标签页打开的方式'>打开方式:" +
  3934. "<select id='iqxin-globalNewtab'>" +
  3935. "<option value='globalDef'>默认页面 ▽</option>" +
  3936. "<option value='globalNewtab'" + (getSettingData.newtab?"selected":"") + ">新标签页 ▽</option>" +
  3937. "</select>" +
  3938. "</span> " +
  3939. "<span id='xin-addDel' title='add & del 增加新的或者删除现有的搜索'>增加 / 删除</span> " +
  3940. "<span id='moreSet' title='more set'>更多设置</span>" +
  3941. "<span id='xin-save' title='save & close'>保存并关闭</span>" +
  3942. "</div>";
  3943. btnEle.innerHTML = btnStr;
  3944. this.ele.appendChild(btnEle);
  3945.  
  3946. // 可以拖动的顶栏
  3947. var dragDom = document.createElement("div");
  3948. dragDom.id = "dragDom";
  3949. dragDom.style.cssText = "height:16px;width:97%;position:absolute;top:0;cursor:move;";
  3950. this.ele.appendChild(dragDom);
  3951.  
  3952. // 增加搜索列表
  3953. var nSearchList = document.createElement("div");
  3954. nSearchList.id = "nSearchList";
  3955. nSearchList.style.cssText = "visibility:hidden;opacity:0;transition:0.3s;position:absolute;bottom:10%;right:5%;padding:5px 10px;border-radius:4px;border:1px solid #EC6D51;color:#ec6d51;cursor:pointer;background:#fff;";
  3956. nSearchList.innerHTML = "增加新的搜索列表";
  3957. this.ele.appendChild(nSearchList);
  3958.  
  3959. // 关闭按钮
  3960. if(getSettingData.closeBtn){
  3961. var closebtnELe = document.createElement("span");
  3962. closebtnELe.id = "xin-close";
  3963. closebtnELe.setAttribute("title","close 关闭");
  3964. this.ele.appendChild(closebtnELe);
  3965. }
  3966. },
  3967. show: function(){
  3968. var style = this.mask.style;
  3969. var eleStyle = this.ele.style;
  3970. style.display = "flex";
  3971. eleStyle.transform = "translateY(-20%)";
  3972. document.body.style.overflow = "hidden";
  3973.  
  3974. this.windowResize();
  3975.  
  3976. // if(document.querySelector("xin-newtab")){
  3977. // document.querySelector("#xin-newtab").querySelectorAll("option")[getSettingData.newtab].setAttribute("selected","selected");
  3978. // }
  3979.  
  3980. setTimeout(function () {
  3981. style.opacity = 1;
  3982. eleStyle.transform = "none";
  3983. }, 30);
  3984. },
  3985. hide: function(){
  3986. this.allBoxClose(); // 关闭所有次级窗口、菜单
  3987.  
  3988. var style = this.mask.style;
  3989. this.ele.style.transform = "translateY(20%)";
  3990. style.opacity = 0;
  3991. setTimeout(function () {
  3992. style.display = "none";
  3993. document.body.style.overflow = "auto";
  3994. }, 500);
  3995. },
  3996. reset: function(){
  3997. if(confirm("将会删除用户设置!")){
  3998. GM_deleteValue("searchEngineJumpData");
  3999. window.location.reload();
  4000. }
  4001. },
  4002. // 增加 “添加删除框”
  4003. addDel: function(e){
  4004. if (e.target.classList.contains("iqxin-btn-active")){
  4005. this.addDelremove();
  4006. } else {
  4007. // console.log("不存在,增加增加");
  4008. var obtn = document.querySelector("#xin-addDel");
  4009. obtn.classList.add("iqxin-btn-active");
  4010.  
  4011. var odom = document.querySelectorAll(".iqxin-set-del");
  4012. [].forEach.call(odom,function(div){
  4013. div.classList.add("iqxin-set-active");
  4014. });
  4015.  
  4016. // 标题添加删除框
  4017. var odom = document.querySelectorAll(".iqxin-set-title-del");
  4018. [].forEach.call(odom,function(div){
  4019. // console.log(div);
  4020. div.classList.add("iqxin-set-active");
  4021. });
  4022.  
  4023. // 增加单个搜索
  4024. var oitemAdd = document.querySelectorAll(".iqxin-additem");
  4025. [].forEach.call(oitemAdd,function(div){
  4026. // console.log(div);
  4027. div.classList.add("iqxin-set-active");
  4028. });
  4029.  
  4030. // 添加搜索列表
  4031. var olistAdd = document.querySelector("#nSearchList");
  4032. olistAdd.classList.add("iqxin-set-active");
  4033.  
  4034. }
  4035. },
  4036. // 关闭 “添加删除框”
  4037. addDelremove: function(bool){
  4038. var obtn = document.querySelector(".iqxin-btn-active");
  4039. if(obtn){
  4040. obtn.classList.remove("iqxin-btn-active");
  4041.  
  4042. var odom = document.querySelectorAll(".iqxin-set-active");
  4043. [].forEach.call(odom,function(div){
  4044. div.classList.remove("iqxin-set-active");
  4045. });
  4046.  
  4047. var oitemAdd = document.querySelectorAll(".iqxin-additem");
  4048. [].forEach.call(oitemAdd,function(div){
  4049. div.classList.remove("iqxin-set-active");
  4050. });
  4051. }
  4052. this.addItemBoxRemove();
  4053. },
  4054.  
  4055. // 界面,框:添加新的搜索
  4056. addItemBox: function(bool){
  4057. this.isOnline();
  4058. this.addItemBoxRemove();
  4059.  
  4060. var newDiv = document.createElement("div");
  4061. newDiv.id= "newSearchBox";
  4062. newDiv.style.cssText = "top:43%;opacity:0.1;";
  4063. newDiv.innerHTML=""+
  4064. "<span>标&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp题 : </span><input id='iqxin-newTitle' placeholder='必填' onfocus='this.select()' /> <br/><br/>" +
  4065. "<span>链&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp接 : </span><input id='iqxin-newLink' placeholder='必填' onfocus='this.select()' /> <br/><br/>" +
  4066. "<span>图&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp标 : </span><input id='iqxin-newIcon' placeholder='选填,留空则自动获取' onfocus='this.select()' /> <br/><br/>" +
  4067. "<span>打开方式 : " +
  4068. '<select id="iqxin-newTarget" style="border-radius: 4px;border: none;padding: 2px 0 2px 2px"> ' +
  4069. '<option value="default">新标签页打开</option> ' +
  4070. '<option value="newtab">当前页打开</option> ' +
  4071. '<select> ' +
  4072. "</span>" +
  4073. "<br/><br/>" +
  4074. "<span style=''><a target='_blank' style='color:#999;' href='https://gf.qytechs.cn/zh-CN/scripts/27752-searchenginejump'>相关使用说明</a></span>" +
  4075. "&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp;" +
  4076. "<button id='addItemBoxEnter' class='addItemBoxEnter addItemBoxBtn iqxin-enterBtn'>确定</button>&nbsp;&nbsp;&nbsp&nbsp&nbsp;&nbsp" +
  4077. "<button id='addItemBoxCancel' class='addItemBoxCancel addItemBoxBtn iqxin-closeBtn'>取消</button>" +
  4078. "";
  4079.  
  4080. this.ele.appendChild(newDiv);
  4081. setTimeout(function(){newDiv.style.cssText="";},10);
  4082. document.querySelector("#iqxin-newTitle").focus();
  4083. },
  4084. // 内部逻辑,:添加新的搜索
  4085. addItemEnger: function(){
  4086. var otitle,olink,oimg,oblank;
  4087. otitle = document.querySelector("#iqxin-newTitle").value;
  4088. olink = document.querySelector("#iqxin-newLink").value;
  4089. oimg = document.querySelector("#iqxin-newIcon").value;
  4090. oblank = document.querySelector("#iqxin-newTarget").selectedIndex;
  4091.  
  4092. if (!oimg){
  4093. oimg = this.getICON(olink);
  4094. }
  4095.  
  4096. var a = '<span class="sej-engine"' +
  4097. ' data-iqxinimg="$img$" ' +
  4098. ' data-iqxintitle="$title$" ' +
  4099. ' data-iqxinlink="$link$" ' +
  4100. ' data-iqxintarget="$blank$" ' +
  4101. '><img src="$favicon$" class="sej-engine-icon" />$name$</span>' +
  4102. '<span class="iqxin-set-edit" title="编辑 Edit">' +
  4103. '<img class="sej-engine-icon" src="' + icon.edit + '">' +
  4104. '</span> ' +
  4105. '<span class="iqxin-set-del iqxin-set-active" title="删除 Delete">' +
  4106. '<img class="sej-engine-icon" src="' + icon.del + '">' +
  4107. '</span>' ;
  4108.  
  4109. a = a.replace("$img$", oimg)
  4110. .replace("$title$", otitle)
  4111. .replace("$link$", olink);
  4112.  
  4113. if (oblank){
  4114. a = a.replace('data-iqxintarget="$blank$"', '');
  4115. } else {
  4116. a = a.replace('$blank$', "_blank");
  4117. };
  4118.  
  4119. a = a.replace('$name$', otitle)
  4120. .replace('$favicon$', oimg);
  4121.  
  4122. var ospan = document.createElement("span");
  4123. ospan.className = "drag";
  4124. ospan.innerHTML = a;
  4125.  
  4126. this.parentNode.insertBefore(ospan,this.parentNode.lastChild);
  4127.  
  4128. // 添加完成,移除添加框
  4129. this.addItemBoxRemove();
  4130. },
  4131. addItemBoxRemove: function(ele){
  4132. ele = ele?ele:"#newSearchBox"
  4133. var newBox = document.querySelector(ele);
  4134. if(newBox){
  4135. // newBox.style.transform = "translateY(30%)";
  4136. newBox.style.top = "60%";
  4137. newBox.style.opacity = "0";
  4138. setTimeout(function(){
  4139. newBox.parentNode.removeChild(newBox);
  4140. },550);
  4141. }
  4142. },
  4143. // 获取图标
  4144. getICON: function(olink){
  4145. var ourl;
  4146. var mark;
  4147. var uri = parseUri(olink);
  4148. var ohttp = uri.protocol?uri.protocol:"http";
  4149. var siteURL = ohttp + "://" + uri.host;
  4150. // console.log(siteURL);
  4151.  
  4152. if(isNaN(getSettingData.getIcon)){
  4153. ourl = getSettingData.getIcon;
  4154. } else {
  4155. mark = parseInt(getSettingData.getIcon);
  4156. console.log(mark);
  4157. switch (mark){
  4158. case 1: ourl = siteURL + "/favicon.ico";break;
  4159. case 2: ourl = 'https://www.google.com/s2/favicons?domain='+siteURL;break;
  4160. case 3: ourl = 'http://statics.dnspod.cn/proxy_favicon/_/favicon?domain='+uri.host;break;
  4161. }
  4162. }
  4163.  
  4164. if(ourl){
  4165. ourl = ourl.replace("%s", siteURL)
  4166. return ourl;
  4167. }
  4168. debug("能否连接至google:",this.online);
  4169. if (this.online){
  4170. ourl = 'https://www.google.com/s2/favicons?domain=' + uri.host;
  4171. return ourl;
  4172. } else {
  4173. ourl = ohttp + "://" + uri.host + "/favicon.ico";
  4174. return ourl;
  4175. }
  4176. },
  4177.  
  4178. // 界面, 框: 添加新的搜索列表
  4179. addSearchListBox: function(){
  4180. var odiv = document.querySelector("#newSearchListBox");
  4181. if (odiv){
  4182. this.boxClose("#newSearchListBox");
  4183. return;
  4184. }
  4185. var newDiv = document.createElement("div");
  4186. newDiv.id= "newSearchListBox";
  4187.  
  4188. var myDate = new Date();
  4189. // var hash = "user" + myDate.getFullYear() + myDate.getMonth() + myDate.getDate() + myDate.getHours() +myDate.getMinutes()+myDate.getSeconds();
  4190. var hash = "user" + myDate.getTime();
  4191.  
  4192. newDiv.innerHTML=""+
  4193. "<span>列表名称: </span><input id='iqxin-newSearchListName' onfocus='this.select()'>" +
  4194. "<br><br>" +
  4195. "<span>内部名称: </span><input id='iqxin-newSearchListInnerName' onfocus='this.select()' value='" + hash + "'>" +
  4196. "<br><br>" +
  4197. "<button id='addSearchListBoxEnter' class='addSearchListBoxEnter addItemBoxBtn'>确定</button>&nbsp;&nbsp;&nbsp&nbsp&nbsp;&nbsp" +
  4198. "<button id='addSearchListBoxCancel' class='addSearchListBoxCancel addItemBoxBtn'>取消</button>" +
  4199. "";
  4200. this.ele.appendChild(newDiv);
  4201.  
  4202. document.querySelector("#iqxin-newSearchListName").focus();
  4203. },
  4204. addSearchListEnger: function(){
  4205. var name = document.querySelector("#iqxin-newSearchListName").value;
  4206. var innerName = document.querySelector("#iqxin-newSearchListInnerName").value;
  4207.  
  4208. if(innerName.length===0){
  4209. alert("内部名称不能为空");
  4210. return;
  4211. }
  4212. if(name.length===0){
  4213. name = innerName;
  4214. }
  4215.  
  4216. var odiv = document.createElement("div");
  4217. odiv.id = innerName;
  4218. odiv.className = "iqxin-items";
  4219. odiv.innerHTML = "" +
  4220. '<div class="sejtitle" data-iqxintitle="' + innerName + '" data-xin="99">' +
  4221. '<span class="iqxin-pointer-events">'+ name +'</span>' +
  4222. '<span class="iqxin-title-edit" title="编辑 Edit">' +
  4223. '<img class="sej-engine-icon" src="' + icon.edit + '">' +
  4224. '</span> ' +
  4225. '<span class="iqxin-set-title-del iqxin-set-active" title="删除 Delete">' +
  4226. '<img class="sej-engine-icon" src="' + icon.del + '">' +
  4227. '</span>' +
  4228. '</div>' +
  4229. '<div class="sejcon">' +
  4230. '<span class="iqxin-additem iqxin-set-active">+</span>' +
  4231. '</div>' +
  4232. "";
  4233.  
  4234. // this.boxClose("#newSearchListBox");
  4235. this.addItemBoxRemove("#newSearchListBox");
  4236.  
  4237. var btnEle = document.querySelector("#btnEle");
  4238. btnEle.parentNode.insertBefore(odiv,btnEle);
  4239. },
  4240.  
  4241. boxClose: function(ele){
  4242. var odiv = document.querySelector(ele);
  4243. if(odiv){
  4244. odiv.parentNode.removeChild(odiv);
  4245. }
  4246. },
  4247.  
  4248. // 界面 框:修改框
  4249. addEditBox: function(e){
  4250. console.log(e);
  4251. this.addItemBoxRemove();
  4252.  
  4253. var target = e.target.parentNode.firstChild;
  4254.  
  4255. var otitle = target.dataset.iqxintitle;
  4256. var olink = target.dataset.iqxinlink;
  4257. var oicon = target.dataset.iqxinimg;
  4258. var otarget = target.dataset.iqxintarget;
  4259. var odisabled = target.dataset.iqxindisabled;
  4260. let oGBK = target.dataset.iqxingbk;
  4261.  
  4262. this.editTemp = target;
  4263.  
  4264. console.log(oicon);
  4265.  
  4266. var strblank;
  4267. if(otarget){
  4268. strblank = '<option value="default">新标签页打开</option><option value="newtab">当前页打开</option> ';
  4269. } else{
  4270. strblank = '<option value="default">新标签页打开</option><option value="newtab" selected="selected">当前页打开</option>';
  4271. }
  4272.  
  4273. var strGBK = "";
  4274. if(oGBK){
  4275. strGBK = "checked='checked'";
  4276. }
  4277.  
  4278. var newDiv = document.createElement("div");
  4279. newDiv.id= "newSearchBox";
  4280. // 从鼠标点击所在的项目展开菜单(2021-03-16,从上线至今,动画一直有卡顿现象)
  4281. // newDiv.style.cssText = "top:"+(e.screenY-120) +"px;left:"+(e.screenX-140) +"px;";
  4282. newDiv.style.cssText = "top:43%;opacity:0.1;";
  4283. var innerHTML=`
  4284. <span>标&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp : </span><input id="iqxin-newTitle" placeholder="必填" onfocus="this.select()" value="${otitle}" /> <br/><br/>
  4285. <span>链&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp : </span><input id="iqxin-newLink" placeholder="必填" onfocus="this.select()" value="${olink }" /> <br/><br/>
  4286. <span>图&nbsp;&nbsp;&nbsp&nbsp&nbsp&nbsp&nbsp : </span><input id="iqxin-newIcon" placeholder="选填,留空则自动获取" onfocus="this.select()" value="${oicon }" /> <br/><br/>
  4287. <span>打开方式 :
  4288. <select id="iqxin-newTarget" style="border-radius: 4px;border: none;padding: 2px 0 2px 2px">
  4289. ${strblank}
  4290. <select>
  4291. </span>
  4292. <br/><br/>
  4293. <span style=""><label>GBK编码:<input type="checkbox" name="" id="iqxin-newGBK" ${strGBK} style="vertical-align:middle;"></label></span>
  4294. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  4295. <button id="editItemBoxEnter" class="editItemBoxEnter addItemBoxBtn iqxin-enterBtn">确定</button>&nbsp;&nbsp;&nbsp&nbsp&nbsp;&nbsp
  4296. <button id="addItemBoxCancel" class="addItemBoxCancel addItemBoxBtn iqxin-closeBtn">取消</button>
  4297. `
  4298.  
  4299. newDiv.innerHTML = innerHTML;
  4300.  
  4301. this.ele.appendChild(newDiv);
  4302. setTimeout(function(){newDiv.style.cssText="";},10);
  4303. document.querySelector("#iqxin-newTitle").select();
  4304. },
  4305. addEditBoxEnger: function(){
  4306. var otitle,olink,oimg,oblank,ogbk;
  4307. otitle = document.querySelector("#iqxin-newTitle").value;
  4308. olink = document.querySelector("#iqxin-newLink").value;
  4309. oimg = document.querySelector("#iqxin-newIcon").value;
  4310. oblank = document.querySelector("#iqxin-newTarget").selectedIndex;
  4311. ogbk = document.querySelector("#iqxin-newGBK").checked;
  4312.  
  4313. this.editTemp.dataset.iqxintitle = otitle;
  4314. this.editTemp.lastChild.innerText = otitle; //文本节点
  4315.  
  4316. this.editTemp.dataset.iqxinlink = olink;
  4317. this.editTemp.dataset.iqxinimg = oimg;
  4318. this.editTemp.firstChild.src = oimg;
  4319.  
  4320. // 是否新标签页打开
  4321. if (oblank){
  4322. this.editTemp.removeAttribute("data-iqxintarget");
  4323. } else {
  4324. this.editTemp.dataset.iqxintarget = "_blank";
  4325. }
  4326. // 是否禁用
  4327. if (ogbk){
  4328. this.editTemp.dataset.iqxingbk = "true";
  4329. } else{
  4330. this.editTemp.removeAttribute("data-iqxingbk");
  4331. }
  4332.  
  4333. // 修改完成,移除添加框
  4334. this.addItemBoxRemove();
  4335. },
  4336.  
  4337. // 标题编辑
  4338. addTitleEditBox: function(e){
  4339. this.addItemBoxRemove();
  4340.  
  4341. var element = e.target.parentNode.firstChild;
  4342. element.classList.remove("iqxin-pointer-events");
  4343.  
  4344. var flag = document.querySelector("#titleEdit");
  4345. // 存在编辑的标题 && 之前的编辑的节点与点击的节点是同一个节点
  4346. if(flag && flag.parentNode == element){
  4347. element.innerHTML = element.firstChild.value?element.firstChild.value:"空";
  4348. element.classList.add("iqxin-pointer-events");
  4349. } else {
  4350. // 存在编辑的标题,但与点击的不是同一个节点
  4351. if(flag){
  4352. flag.parentNode.innerHTML = flag.parentNode.firstChild.value;
  4353. }
  4354. var oldhtml = element.innerHTML;
  4355. var newobj = document.createElement("input");
  4356. newobj.id = "titleEdit";
  4357. newobj.type = "text";
  4358. newobj.value = oldhtml;
  4359. // newobj.onblur = function(){
  4360. // element.innerHTML = this.value?this.value:oldhtml;
  4361. // }
  4362. newobj.onkeydown = function(e){
  4363. if((e.keyCode || e.which) == 13){
  4364. element.innerHTML = this.value?this.value:oldhtml;
  4365. } else if((e.keyCode || e.which) == 27){
  4366. element.innerHTML = oldhtml;
  4367. }
  4368.  
  4369. element.classList.add("iqxin-pointer-events");
  4370. }
  4371. element.innerHTML = "";
  4372. element.appendChild(newobj);
  4373. newobj.select();
  4374. }
  4375. },
  4376. addTitleEditBoxRemove:function(){
  4377. var odiv = document.querySelector("#titleEdit");
  4378. if(odiv){
  4379. odiv.parentNode.innerHTML = odiv.value?odiv.value:"空";
  4380. }
  4381. },
  4382.  
  4383. // 高级菜单,配置文件编辑界面
  4384. editCodeBox: function(){
  4385. console.log("原始数据: ",getSettingData);
  4386. var userSetting = GM_getValue("searchEngineJumpData")
  4387. var editbox = document.createElement("div");
  4388. // var sData =
  4389. editbox.id = "iqxin-editCodeBox";
  4390. editbox.style.cssText = "position:fixed;" +
  4391. "top:50%;left:50%;" +
  4392. "transform:translate(-50%,-50%);" +
  4393. "background:#ccc;" +
  4394. "border-radius:4px;" +
  4395. "padding:10px 20px;" ;
  4396. var innerH = " "+
  4397. "<p><span style='color:red;font-size:1.2em;'>! ! !</span></br>"+
  4398. "此处有更多的设置选项,自由度更高,</br>"+
  4399. "但设置错误会导致脚本无法运行"+
  4400. "</p>" +
  4401. "<textarea wrap='off' cols='45' rows='20' style='overflow:auto;border-radius:4px;'>" + JSON.stringify(userSetting,false,4) + "</textarea>" +
  4402. "<br>" +
  4403. "<button id='xin-reset'>清空设置</button> &nbsp;&nbsp;&nbsp;" +
  4404. "<button id='xin-copyCode'>复制</button> &nbsp;&nbsp;&nbsp;" +
  4405. "<button id='codeboxclose' class='iqxin-closeBtn'>关闭</button> &nbsp;&nbsp;&nbsp;" +
  4406. "<button id='xin-codeboxsave' class='iqxin-enterBtn'>保存</button>" +
  4407. "";
  4408. // console.log(JSON.stringify(getSettingData,4));
  4409. // console.log(JSON.stringify(getSettingData,null,4));
  4410. editbox.innerHTML = innerH;
  4411. this.ele.appendChild(editbox);
  4412. },
  4413. editCodeBoxSave: function(){
  4414. var codevalue = document.querySelector("#iqxin-editCodeBox textarea").value;
  4415. if(codevalue){
  4416. // console.log(JSON.parse(codevalue));
  4417. GM_setValue("searchEngineJumpData",JSON.parse(codevalue));
  4418. // console.log(GM_getValue("searchEngineJumpData"));
  4419. // 刷新页面
  4420. setTimeout(function(){
  4421. window.location.reload();
  4422. },300);
  4423. } else {
  4424. // alert("输入为空");
  4425. this.reset();
  4426. }
  4427. },
  4428. editCodeBoxClose: function(){
  4429. var box = document.querySelector("#iqxin-editCodeBox");
  4430. if(box){
  4431. box.parentNode.removeChild(box);
  4432. }
  4433. },
  4434.  
  4435. // 导入窗口
  4436. addImportingBox: function(){
  4437. var odiv = document.querySelector("#importingBox");
  4438. if (odiv){
  4439. this.boxClose("#importingBox");
  4440. return;
  4441. }
  4442. var newDiv = document.createElement("div");
  4443. newDiv.id= "importingBox";
  4444.  
  4445. var a ="<p>更加细分的搜索列表, 列表之间会有所重合</p>" +
  4446. "<ul>";
  4447.  
  4448. for(let i=0;i<engineList_plus.length;i++){
  4449. // if(engineList_plus.status!=3){continue};
  4450. console.log(engineList_plus[i]);
  4451.  
  4452. // 包含网站名称
  4453. var includeWeb = "";
  4454. for(let j=0; j<engineList_plus[i].engineList.length;j++){
  4455. if(j!=0){
  4456. includeWeb += " | " + engineList_plus[i].engineList[j].name;
  4457. } else{
  4458. includeWeb += engineList_plus[i].engineList[j].name;
  4459. }
  4460. }
  4461.  
  4462. a += "<li>"+
  4463. "<span class='xin-importing-item' xin-importing-id='" + i +"' title='"+ (engineList_plus[i].message?engineList_plus[i].message:engineList_plus[i].engineDetails[0]) +"'>"+ (engineList_plus[i].name?engineList_plus[i].name:engineList_plus[i].engineDetails[0]) + " : </span>" +
  4464. "<p title='"+ includeWeb +"'>"+ includeWeb +"</p>"
  4465. "</li>";
  4466. }
  4467.  
  4468. a += "</ul>";
  4469.  
  4470. newDiv.innerHTML=a;
  4471.  
  4472. this.ele.appendChild(newDiv);
  4473. },
  4474. addImportingEnger:function(e){
  4475. // console.log(e);
  4476. // console.log("第几个: ",e.target.getAttribute("xin-importing-id"));
  4477. var engineListID = e.target.getAttribute("xin-importing-id");
  4478. var engineList_temp = engineList_plus[engineListID];
  4479. var elist = engineList_temp.engineList;
  4480.  
  4481. var name = engineList_temp.engineDetails[0];
  4482. var innerName = engineList_temp.engineDetails[1];
  4483.  
  4484. var odiv = document.createElement("div");
  4485. odiv.id = innerName;
  4486. odiv.className = "iqxin-items";
  4487. var innerHTML = "" +
  4488. '<div class="sejtitle" data-iqxintitle="' + innerName + '" data-xin="99">' +
  4489. '<span class="iqxin-pointer-events">'+ name +'</span>' +
  4490. '<span class="iqxin-title-edit" title="编辑 Edit">' +
  4491. '<img class="sej-engine-icon" src="' + icon.edit + '">' +
  4492. '</span> ' +
  4493. '<span class="iqxin-set-title-del iqxin-set-active" title="删除 Delete">' +
  4494. '<img class="sej-engine-icon" src="' + icon.del + '">' +
  4495. '</span>' +
  4496. '</div>' +
  4497. '<div class="sejcon">' +
  4498. "";
  4499.  
  4500. // 具体列表
  4501. for(let i=0;i<elist.length;i++){
  4502. var a = '<span draggable="true" class="drag">' +
  4503. '<span class="sej-engine"' +
  4504. ' data-iqxinimg="$img$" ' +
  4505. ' data-iqxintitle="$title$" ' +
  4506. ' data-iqxinlink="$link$" ' +
  4507. ' data-iqxintarget="$blank$" ' +
  4508. '><img src="$favicon$" class="sej-engine-icon" />$name$</span>' +
  4509. '<span class="iqxin-set-edit" title="编辑 Edit">' +
  4510. '<img class="sej-engine-icon" src="' + icon.edit + '">' +
  4511. '</span> ' +
  4512. '<span class="iqxin-set-del iqxin-set-active" title="删除 Delete">' +
  4513. '<img class="sej-engine-icon" src="' + icon.del + '">' +
  4514. '</span>' +
  4515. '</span>';
  4516.  
  4517. a = a.replace("$img$", elist[i].favicon)
  4518. .replace("$title$", elist[i].name)
  4519. .replace("$link$", elist[i].url);
  4520.  
  4521. if (elist[i].blank){
  4522. a = a.replace('$blank$', "_blank");
  4523. } else {
  4524. a = a.replace('data-iqxintarget="$blank$"', '');
  4525. };
  4526.  
  4527. a = a.replace('$name$', elist[i].name)
  4528. .replace('$favicon$', elist[i].favicon);
  4529.  
  4530. innerHTML += a;
  4531. }
  4532.  
  4533. innerHTML += "" +
  4534. '<span class="iqxin-additem iqxin-set-active">+</span>' +
  4535. '</div>' +
  4536. "";
  4537.  
  4538.  
  4539. odiv.innerHTML = innerHTML;
  4540.  
  4541. this.addItemBoxRemove("#importingBox");
  4542.  
  4543. var btnEle = document.querySelector("#btnEle");
  4544. btnEle.parentNode.insertBefore(odiv,btnEle);
  4545. },
  4546.  
  4547. // “设置按钮” 透明度
  4548. setBtnOpacityFun: function(){
  4549. if(~window.navigator.userAgent.indexOf("Chrome")){
  4550. var odom = document.querySelector("#setBtnOpacityRange");
  4551. var odomV = odom.value;
  4552. // odom.style.backgroundSize = odom.value*100 +"% 100%";
  4553. console.log(odomV,getSettingData.setBtnOpacity);
  4554. if(getSettingData.setBtnOpacity<0){
  4555. document.querySelector(".iqxin-setBtnOpacityRangeValue").innerHTML = odomV.toString().padEnd(4,"0");
  4556. odom.style.background = "-webkit-linear-gradient(left,#3ABDC1,#83e7ea) no-repeat, #fff";
  4557. }else{
  4558. document.querySelector(".iqxin-setBtnOpacityRangeValue").innerHTML = "禁用";
  4559. odom.style.background = "-webkit-linear-gradient(left,#bdbdbd,#c6c7c7) no-repeat, #fff";
  4560. }
  4561. odom.style.backgroundSize = odom.value*100 +"% 100%";
  4562.  
  4563. getSettingData.setBtnOpacity = -getSettingData.setBtnOpacity;
  4564. } else {
  4565. // console.log("非chrome");
  4566. iqxinShowTip("抱歉,目前只支持chrome类浏览器",2500);
  4567. }
  4568. },
  4569.  
  4570. // 标题点击 (开关搜索列表)(可以并入到下面的点击事件)
  4571. titleClick: function(e){
  4572. var target = e.target;
  4573. target.dataset.xin = -parseInt(target.dataset.xin);
  4574. target.dataset.xin>0 ? iqxinShowTip("启用") : iqxinShowTip("禁用");
  4575. },
  4576. // 点击事件 此处的 if 需要根据实际情况替换成 elseif (switch)
  4577. domClick: function(e){
  4578. var targetClass = e.target.className;
  4579. var targetid = e.target.id;
  4580. debug("点击事件:%o, ID: %o, class: %o, e: %o",e.target,targetid,targetClass,e)
  4581.  
  4582. // 删除搜索
  4583. if(~e.target.className.indexOf("iqxin-set-del")){
  4584. // console.log(e.target);
  4585. e.target.parentNode.parentNode.removeChild(e.target.parentNode);
  4586. };
  4587. // 删除搜索列表
  4588. if(~e.target.className.indexOf("iqxin-set-title-del")){
  4589. // console.log(e.target, e.target.parentNode.parentNode);
  4590. e.target.parentNode.parentNode.parentNode.removeChild(e.target.parentNode.parentNode);
  4591. };
  4592.  
  4593. if(~e.target.className.indexOf("iqxin-additem")){
  4594. this.parentNode = e.target.parentNode;
  4595. this.addItemBox();
  4596. };
  4597. if(e.target.className==="sej-engine"){
  4598. e.target.dataset.iqxindisabled = e.target.dataset.iqxindisabled ? "": "true";
  4599. e.target.dataset.iqxindisabled ? iqxinShowTip("禁用") : iqxinShowTip("启用");
  4600. };
  4601. if(~targetClass.indexOf("addItemBoxCancel")){
  4602. this.addItemBoxRemove();
  4603. };
  4604. // 添加新的搜索 确定
  4605. if(~targetClass.indexOf("addItemBoxEnter")){
  4606. this.addItemEnger();
  4607. };
  4608. // 添加新的搜索列表 确定
  4609. if(targetid === "nSearchList"){
  4610. debug("添加新的搜索列表");
  4611. this.addSearchListBox();
  4612. };
  4613. if(targetid === "addSearchListBoxEnter"){
  4614. debug("向网页添加元素");
  4615. this.addSearchListEnger();
  4616. };
  4617. if(targetid === "addSearchListBoxCancel"){
  4618. debug("移除盒子");
  4619. // this.boxClose("#newSearchListBox");
  4620. this.addItemBoxRemove("#newSearchListBox");
  4621. };
  4622.  
  4623. // 修改搜索 确定
  4624. if(~targetClass.indexOf("editItemBoxEnter")){
  4625. this.addEditBoxEnger();
  4626. };
  4627.  
  4628. // 编辑框
  4629. if(~e.target.className.indexOf("iqxin-set-edit")){
  4630. this.addEditBox(e);
  4631. }
  4632. // 标题编辑框
  4633. if(~targetClass.indexOf("iqxin-title-edit")){
  4634. e.stopPropagation();
  4635. this.addTitleEditBox(e);
  4636. }
  4637. if(~targetClass.indexOf("sejtitle")){
  4638. this.titleClick(e);
  4639. }
  4640. // codebox 源代码编辑框
  4641. if(targetid ==="codeboxclose"){
  4642. this.editCodeBoxClose();
  4643. } else if(targetid==="xin-reset"){
  4644. this.reset();
  4645. } else if( targetid === "xin-codeboxsave"){
  4646. this.editCodeBoxSave();
  4647. } else if( targetid === "xin-copyCode"){
  4648. GM_setClipboard(JSON.stringify(getSettingData,false,4));
  4649. iqxinShowTip("复制成功");
  4650. }
  4651.  
  4652. // 点击更多菜单
  4653. if(targetid ==="moreSet"){
  4654. document.querySelector("#btnEle2").classList.toggle("btnEle2active");
  4655. // iqxin-btn-active
  4656. e.target.classList.toggle("iqxin-btn-active");
  4657. }
  4658.  
  4659. // 点击导入菜单
  4660. if(targetid ==="xin-importing"){
  4661. this.addImportingBox();
  4662. }
  4663. if(targetClass ==="xin-importing-item"){
  4664. this.addImportingEnger(e);
  4665. }
  4666.  
  4667. // 关闭"设置菜单按钮"
  4668. if(targetClass === "iqxin-setBtnOpacityRangeValue"){
  4669. this.setBtnOpacityFun();
  4670. }
  4671.  
  4672. // 关闭设置菜单
  4673. if (targetid === "xin-close"){
  4674. this.hide();
  4675. }
  4676.  
  4677. // 空白地方点击
  4678. if(~targetClass.indexOf("iqxin-items") || targetid === "settingLayer" || targetClass==="btnEleLayer"){
  4679. this.allBoxClose();
  4680. }
  4681. },
  4682.  
  4683. // 关闭所有次级窗口、菜单
  4684. allBoxClose: function(){
  4685. this.addItemBoxRemove(); // 新的搜索添加框
  4686. this.addDelremove(); // 增加/删除界面
  4687. this.editCodeBoxClose(); // code编辑框
  4688. this.addTitleEditBoxRemove(); //标题编辑框
  4689. this.addItemBoxRemove("#newSearchListBox"); // 添加新的搜索列表
  4690. this.boxClose("#iqxin-sortBox"); // 搜索列表排序
  4691. this.addItemBoxRemove("#importingBox"); //导入框
  4692. document.querySelector("#btnEle2").classList.remove("btnEle2active"); // 更多设置
  4693. },
  4694.  
  4695. // 窗口位置拖动
  4696. setDragNode: function(ele) {
  4697. var node = document.querySelector("#dragDom");
  4698.  
  4699. node.addEventListener("mousedown",function(event){
  4700. ele.style.transition = "null";
  4701. // offsetLeft 距离 body 的位置, 得到的 dis 即鼠标到窗口左上角的位置
  4702. var disX = event.clientX - ele.offsetLeft;
  4703. var disY = event.clientY - ele.offsetTop;
  4704.  
  4705. var move = function(event) {
  4706. //鼠标的位置减去到左上角的位置 即窗口的位置
  4707. // console.log(event.clientX - disX,event.clientY - disY)
  4708. ele.style.left = event.clientX - disX + "px";
  4709. ele.style.top = event.clientY - disY + "px";
  4710. };
  4711.  
  4712. document.addEventListener("mousemove",move);
  4713. document.addEventListener("mouseup",function(){
  4714. ele.style.transition = "0.5s";
  4715. document.removeEventListener("mousemove",move);
  4716. })
  4717. });
  4718. },
  4719.  
  4720. // 拖动
  4721. domdragstart:function (e) {
  4722. if(~this.className.indexOf("sejtitle")){
  4723. dragEl = this.parentNode;
  4724. } else{
  4725. dragEl = this;
  4726. }
  4727. dragData = dragEl.innerHTML;
  4728. e.dataTransfer.effectAllowed = "move";
  4729. e.dataTransfer.setData("text/html",dragEl.innerHTML);
  4730. },
  4731. domdragenter:function (e) {
  4732. var target = e.target;
  4733. var targetClass = target.className;
  4734. if(~targetClass.indexOf("sejtitle")){
  4735. target = target.parentNode;
  4736. }
  4737. target.classList.add('drop-over');
  4738. },
  4739. domdragover:function (e) {
  4740. if (e.preventDefault) {
  4741. e.preventDefault();
  4742. }
  4743. e.dataTransfer.dropEffect = 'move';
  4744. return false;
  4745. },
  4746. domdragleave:function (e) {
  4747. var target = e.target;
  4748. var targetClass = target.className;
  4749. if(~targetClass.indexOf("sejtitle")){
  4750. target = target.parentNode;
  4751. }
  4752. target.classList.remove('drop-over');
  4753. },
  4754. domdrop:function (e) {
  4755. debug("拖拽结束")
  4756. // e.target === this
  4757. var _this = e.target;
  4758. var that = _this.parentNode;
  4759. var pparentNode = that.parentNode;
  4760.  
  4761. // 防止跨区域移动
  4762. SEJsetting.prototype.domdropend();
  4763. if(dragEl.className != that.className){
  4764. console.log("移动对象 之前,现在: ", dragEl.className);
  4765. console.log(that.className);
  4766. return;
  4767. }
  4768.  
  4769. // Sortable.js https://github.com/RubaXa/Sortable
  4770. var targetRect = _this.getBoundingClientRect(); //
  4771. var width = targetRect.right - targetRect.left; //目标节点的宽
  4772. var height = targetRect.bottom - targetRect.top; //目标节点的高
  4773. var domPosition = null;
  4774. if(~_this.className.indexOf("sejtitle")){
  4775. debug(e.clientX,targetRect.left,height,e.clientX - targetRect.left,(e.clientX - targetRect.left) / height)
  4776. if((e.clientX - targetRect.left) / width > 0.5){
  4777. debug("右");
  4778. domPosition = true;
  4779. }else{
  4780. debug("左");
  4781. domPosition = false;
  4782. }
  4783. } else {
  4784. if((e.clientY - targetRect.top) / height > 0.5){
  4785. debug("下");
  4786. domPosition = true;
  4787. }else{
  4788. debug("上");
  4789. domPosition = false;
  4790. }
  4791. }
  4792.  
  4793. dragEl.style.transformOrigin = "top center";
  4794. dragEl.style.animation = "sejopen 0.3s";
  4795.  
  4796. if(domPosition){
  4797. if(pparentNode.lastChild == that){
  4798. pparentNode.insertBefore(dragEl,that);
  4799. }else{
  4800. pparentNode.insertBefore(dragEl,that.nextElementSibling)
  4801. }
  4802. }else{
  4803. that.parentNode.insertBefore(dragEl,that);
  4804. }
  4805.  
  4806. // 重新绑定拖拽事件
  4807. SEJsetting.prototype.dragEvent();
  4808. return false;
  4809. },
  4810. domdropend:function(){
  4811. var dom = document.querySelector(".drop-over");
  4812. if(dom){
  4813. dom.classList.remove("drop-over")
  4814. }
  4815. },
  4816.  
  4817. // 判断是否能连接至google
  4818. isOnline: function(){
  4819. console.log("this.online",this.online);
  4820. if(this.online)return;
  4821.  
  4822. var that = this;
  4823. var myImage = new Image;
  4824. myImage.src = 'https://www.google.com/s2/favicons?domain=www.baidu.com&' + Math.random() ;
  4825. setTimeout(function(){
  4826. // console.log("取消加载");
  4827. console.log(myImage.width);
  4828. if(myImage.width){
  4829. that.online = true;
  4830. }else{
  4831. myImage.src = undefined;
  4832. };
  4833. },2000);
  4834. },
  4835.  
  4836. // 重新加载工具
  4837. reloadSet: function(){
  4838. var elems = document.querySelectorAll('#sej-container, #settingLayerMask, sejspan.sej-drop-list');
  4839. if (!elems) return;
  4840. console.log("elems: " + elems);
  4841. // return;
  4842.  
  4843. [].forEach.call(elems, function(elem) {
  4844. elem.parentNode.removeChild(elem);
  4845. });
  4846.  
  4847. iqxinstart();
  4848. iqxinShowTip("保存成功");
  4849. },
  4850.  
  4851. // 设置按钮透明度设置
  4852. rangeChange: function(bool){
  4853. var odom = document.querySelector("#setBtnOpacityRange");
  4854. if(getSettingData.setBtnOpacity<0){
  4855. odom.style.background = "-webkit-linear-gradient(left,#bdbdbd,#c6c7c7) no-repeat, #fff";
  4856. odom.style.backgroundSize = odom.value*100 +"% 100%";
  4857. document.querySelector(".iqxin-setBtnOpacityRangeValue").innerHTML = "禁用";
  4858. getSettingData.setBtnOpacity = -odom.value;
  4859. } else{
  4860. odom.style.background = "-webkit-linear-gradient(left,#3ABDC1,#83e7ea) no-repeat, #fff";
  4861. odom.style.backgroundSize = odom.value*100 +"% 100%";
  4862. let value = odom.value;
  4863. let valueStr = "";
  4864. if(value==0){
  4865. valueStr = "0.00";
  4866. }else if(value==1){
  4867. valueStr = "1.00";
  4868. } else {
  4869. valueStr = odom.value.toString().padEnd(4,"0");
  4870. }
  4871. document.querySelector(".iqxin-setBtnOpacityRangeValue").innerHTML = valueStr;
  4872. getSettingData.setBtnOpacity = odom.value;
  4873. }
  4874. },
  4875.  
  4876. // 窗口大小改变
  4877. windowResize: function(){
  4878. var eleStyle = window.getComputedStyle(this.ele , null);
  4879. var w = parseInt(eleStyle.width) ;
  4880. var h = parseInt(eleStyle.height) + 54;
  4881. var ww = document.documentElement.clientWidth;
  4882. var wh = document.documentElement.clientHeight;
  4883. var maskStyle = this.mask.style;
  4884.  
  4885. if(w>=ww){
  4886. maskStyle.justifyContent = "stretch";
  4887. }else{
  4888. maskStyle.justifyContent = "center";
  4889. }
  4890. if(h>=wh){
  4891. maskStyle.alignItems = "stretch";
  4892. }else{
  4893. maskStyle.alignItems = "center";
  4894. }
  4895. },
  4896. saveData: function(){
  4897. //
  4898. this.addTitleEditBoxRemove(); //标题栏处于编辑状态
  4899.  
  4900. var obj = {};
  4901. var parentdiv = document.querySelectorAll("#settingLayer .iqxin-items");
  4902. for (let i=0;i<parentdiv.length;i++){
  4903. var data = parentdiv[i].querySelectorAll(".sej-engine");
  4904. var id = parentdiv[i].id;
  4905. obj[id]=[];
  4906. for(let ii=0;ii<data.length;ii++){
  4907. if (data[ii].dataset.xin<0){
  4908. var ij = -ii;
  4909. } else {
  4910. ij = ii;
  4911. }
  4912. obj[id][ij]={};
  4913. obj[id][ij].favicon=data[ii].dataset.iqxinimg;
  4914. obj[id][ij].name=data[ii].dataset.iqxintitle;
  4915. obj[id][ij].url=data[ii].dataset.iqxinlink;
  4916. if(data[ii].dataset.iqxintarget){
  4917. obj[id][ij].blank=data[ii].dataset.iqxintarget;
  4918. };
  4919. if(data[ii].dataset.iqxindisabled){
  4920. obj[id][ij].disable=data[ii].dataset.iqxindisabled;
  4921. };
  4922. if(data[ii].dataset.iqxingbk){
  4923. obj[id][ij].gbk=data[ii].dataset.iqxingbk;
  4924. };
  4925. }
  4926. }
  4927.  
  4928. // 分类名称
  4929. var engineDetails=[];
  4930.  
  4931. // 分类排序
  4932. var odetails = document.querySelectorAll(".sejtitle");
  4933. var odetailsLength = odetails.length;
  4934. for(let i=0;i<odetailsLength;i++){
  4935. debug(odetails[i]);
  4936. engineDetails[i] = [];
  4937. engineDetails[i][0] = odetails[i].firstChild.innerHTML;
  4938. engineDetails[i][1] = odetails[i].dataset.iqxintitle;
  4939. engineDetails[i][2] = odetails[i].dataset.xin>=0?true:false;
  4940. }
  4941.  
  4942. // 新标签页全局设置
  4943. var onewtab = document.querySelector("#iqxin-globalNewtab").selectedIndex;
  4944. var foldlist = document.querySelector("#iqxin-foldlist").checked;
  4945.  
  4946. // 以防不测,重新获取本地配置文件
  4947. var getData = GM_getValue("searchEngineJumpData");
  4948. getData.newtab = onewtab;
  4949. getData.foldlist = foldlist;
  4950. getData.setBtnOpacity = getSettingData.setBtnOpacity;
  4951. // getData.debug = document.querySelector("#iqxin-debug").checked;
  4952. getData.center = document.querySelector("#iqxin-center").selectedIndex;
  4953. getData.fixedTop = document.querySelector("#iqxin-fixedTop").checked;
  4954. getData.allOpen = document.querySelector("#iqxin-allOpen-item").checked;
  4955. getData.fixedTopUpward = document.querySelector("#iqxin-fixedTopUpward-item").checked;
  4956. getData.transtion = document.querySelector("#iqxin-transtion").checked;
  4957. getData.HideTheSameLink = document.querySelector("#iqxin-HideTheSameLink").checked;
  4958. getData.selectSearch = document.querySelector("#iqxin-selectSearch").checked;
  4959. getData.engineDetails = engineDetails;
  4960. getData.engineList = obj;
  4961.  
  4962. debug('将要保存的数据:',getData);
  4963. GM_setValue("searchEngineJumpData",getData);
  4964. },
  4965. // 此处的样式主要是设置界面
  4966. addGlobalStyle: function(){
  4967. var head, style;
  4968. var css =
  4969. "#settingLayerMask{" +
  4970. "display: none;" +
  4971. "justify-content: center;" +
  4972. "align-items: center;" +
  4973. "position: fixed;" +
  4974. "top:0; right:0; bottom:0; left:0;" +
  4975. "background-color: rgba(0,0,0,.3);" +
  4976. "backdrop-filter: blur(10px);" +
  4977. "z-index: 200000000;" +
  4978. "overflow: auto;" +
  4979. "font-family: arial,sans-serif;" +
  4980. "min-height: 100%;" +
  4981. "font-size:16px;" +
  4982. "transition:0.3s;" +
  4983. "opacity:0;" +
  4984. "user-select: none;" +
  4985. "-moz-user-select: none;" +
  4986. "padding-bottom: 80px;" +
  4987. "box-sizing: border-box;" +
  4988. "color: var(--font-color-qxin);" +
  4989. "}" +
  4990. "#settingLayer{" +
  4991. "display: flex;" +
  4992. "flex-wrap: wrap;" +
  4993. "padding: 20px 20px 50px 20px;" +
  4994. "margin: 2% 25px 50px 5px;" +
  4995. "background-color: var(--background-setting-qxin);" +
  4996. "border-radius: 4px;" +
  4997. "position: absolute;" +
  4998. "min-width: 700px;" +
  4999. "max-width: 94%;" +
  5000. "transition:0.5s;" +
  5001. "}" +
  5002. ".iqxin-items{" +
  5003. "min-width:5em;" +
  5004. "margin: 0 5px 0px;" +
  5005. "}" +
  5006. "#settingLayer .drag{" +
  5007. "display: block;" +
  5008. "position: relative;" +
  5009. "}" +
  5010. "#settingLayer .sej-engine{" +
  5011. "display: inline-block;" +
  5012. "width: 100%;" +
  5013. "box-sizing: border-box;" +
  5014. "}" +
  5015. ".iqxin-pointer-events," +
  5016. ".sej-engine-icon," +
  5017. "#settingLayer .sej-engine *{" +
  5018. "pointer-events:none;" +
  5019. "}" +
  5020. ".sejtitle{" +
  5021. "text-align: center;" +
  5022. "padding: 2px 0;" +
  5023. "cursor: pointer;" +
  5024. "position: relative;" +
  5025. "}" +
  5026. "#settingLayerMask [data-xin]{" +
  5027. "margin:4px 0;" +
  5028. "line-height:1.7;" +
  5029. "border-radius:4px;" +
  5030. "}" +
  5031. "#settingLayerMask .iqxin-set-edit," +
  5032. "#settingLayerMask .iqxin-set-del{" +
  5033. "border-radius:4px;" +
  5034. "line-height: 1em;" +
  5035. "}" +
  5036. ".sejcon [data-xin]{"+
  5037. "cursor: pointer;" +
  5038. "}" +
  5039. "#settingLayerMask [data-iqxindisabled='true']," +
  5040. "[data-xin^='-']{" +
  5041. "background-color: var(--background-avtive-color-qxin);" +
  5042. "text-decoration: line-through;" +
  5043. "text-decoration-color:red;" +
  5044. "border-radius:2px;" +
  5045. "transition:.3s;" +
  5046. "}" +
  5047. ".sejtitle:not([data-xin^='-']):hover{" +
  5048. "background:var(--background-active-enable-qxin);" +
  5049. "}" +
  5050. "#settingLayerMask .sej-engine:hover{" +
  5051. "background-color: var(--background-active-enable-qxin);" +
  5052. "}" +
  5053. "#settingLayerMask [data-iqxindisabled='true']:hover," +
  5054. "[data-xin^='-']:hover{" +
  5055. "background-color: var(--background-active-disable-qxin);" +
  5056. "}" +
  5057. "#settingLayerMask label{" +
  5058. "cursor:pointer;" +
  5059. "}" +
  5060. "#settingLayerMask .sej-engine-icon{" +
  5061. "vertical-align:middle;" +
  5062. "}" +
  5063. "#btnEle2," +
  5064. "#btnEle{" +
  5065. "position:absolute;" +
  5066. "width:100%;" +
  5067. "bottom: 0px;" +
  5068. "right: 0;" +
  5069. "background: var(--background-setting-qxin);" +
  5070. "border-radius: 4px;" +
  5071. "}" +
  5072. "#btnEle2 span," +
  5073. "#btnEle span{" +
  5074. "display: inline-block;" +
  5075. "background: var(--background-btn-qxin);" +
  5076. "border: 1px solid #3abdc1;" +
  5077. "margin: 12px auto 10px;" +
  5078. "color: #3abdc1;" +
  5079. "padding: 5px 10px;" +
  5080. "border-radius: 4px;" +
  5081. "cursor: pointer;" +
  5082. "outline: none;" +
  5083. "transition: 0.3s;" +
  5084. "}" +
  5085. "#btnEle a{" +
  5086. "color: #999;" +
  5087. "text-decoration: none;" +
  5088. "font-family: auto;" +
  5089. "}" +
  5090. "#btnEle a:hover{" +
  5091. "text-decoration: underline;" +
  5092. "color: #ef8957;" +
  5093. "}" +
  5094. "#btnEle2 span.feedback:hover," +
  5095. "#btnEle span.feedback:hover{" +
  5096. "border-color:#ef8957;" +
  5097. "}" +
  5098. "#btnEle2 span:not(.feedback):hover," +
  5099. "#btnEle span:not(.feedback):hover{" +
  5100. "background:#3ACBDD;" +
  5101. "color:#fff;" +
  5102. "}" +
  5103. "#btnEle .feedback{" +
  5104. "border-color: #aaa;" +
  5105. "}" +
  5106. "#btnEle2>div," +
  5107. "#btnEle>div{" +
  5108. "width: 100%;" +
  5109. "display:flex;" +
  5110. "justify-content: space-around;" +
  5111. "background: var(--background-btn-qxin);" +
  5112. "border-radius: 4px;" +
  5113. "}" +
  5114. "#btnEle2{" +
  5115. "visibility:hidden;" +
  5116. "opacity:0;" +
  5117. "transform:translate(0,40px);" +
  5118. "transition : 0.3s;" +
  5119. "}" +
  5120. "#btnEle2.btnEle2active{" +
  5121. "visibility:visible;" +
  5122. "opacity:1;" +
  5123. // "transform:translate(0,108px);" // 两行的情况下
  5124. "transform:translate(0,53px);" +
  5125. "}" +
  5126. "#settingLayerMask input[type=checkbox]{" +
  5127. "width: 12px;" +
  5128. "height: 12px;" +
  5129. "display: inline-block;" +
  5130. "text-align: center;" +
  5131. "vertical-align: middle;" +
  5132. "line-height: 10px!important;" +
  5133. "margin: 0 5px 5px 5px!important;" +
  5134. "position: relative;" +
  5135. "}" +
  5136. "#settingLayerMask input[type=checkbox]:before{" +
  5137. "content: '';" +
  5138. "position: absolute;" +
  5139. "top: 0;" +
  5140. "left: 0;" +
  5141. "background: #fff;" +
  5142. "width: 100%;" +
  5143. "height: 100%;" +
  5144. "border: 1px solid #d9d9d9;" +
  5145. "}" +
  5146. "#settingLayerMask input[type=checkbox]:checked:after{" +
  5147. 'content: "✔";' +
  5148. "background-color: #63d4d8;" +
  5149. "position: absolute;" +
  5150. "top: 0;" +
  5151. "left: 0;" +
  5152. "width: 12px;" +
  5153. "height: 12px;" +
  5154. "border: 1px solid #63d4d8;" +
  5155. "color: #fff;" +
  5156. "font-size: 10px;" +
  5157. "}" +
  5158. ".drop-over{" +
  5159. "opacity: 0.6;" +
  5160. "}" +
  5161. ".iqxin-title-edit," +
  5162. ".iqxin-set-edit," +
  5163. ".iqxin-set-title-del," +
  5164. ".iqxin-set-del {" +
  5165. "visibility: hidden;" +
  5166. "opacity:0;" +
  5167. "position: absolute;" +
  5168. "background: rgba(207, 249, 255, 0.86);" +
  5169. "color: red;" +
  5170. "top: 50%;" +
  5171. "transform: translate(0,-50%);" +
  5172. "right: 0;" +
  5173. "padding: 3px 3px 6px 6px;" +
  5174. "border-radius: 2px;" +
  5175. "cursor: pointer;" +
  5176. "transition: .3s;" +
  5177. "}" +
  5178. ".iqxin-set-title-del.iqxin-set-active {" +
  5179. "background: #fff;" +
  5180. "border-radius: 50% 0 0 50%;" +
  5181. "}" +
  5182. ".iqxin-title-edit{" +
  5183. "padding: 0px 3px 6px 6px;" +
  5184. "}" +
  5185. "span.iqxin-additem {" +
  5186. "display: inline-block;" +
  5187. "text-align: center;" +
  5188. "width: 100%;" +
  5189. "margin: 10px 0;" +
  5190. "border: 1px dotted red;" +
  5191. "color: red;" +
  5192. "cursor: pointer;" +
  5193. "visibility:hidden;" +
  5194. "opacity:0;" +
  5195. "transition:0.3s;" +
  5196. "transform:scale(0);" +
  5197. "}" +
  5198. "span.iqxin-additem.iqxin-set-active {" +
  5199. "visibility:visible;" +
  5200. "opacity:1;" +
  5201. "margin:10px 0;" +
  5202. "transform:scale(1);" +
  5203. "}" +
  5204. "#settingLayer .sejtitle:hover .iqxin-title-edit," +
  5205. "#settingLayer .sejcon>span:hover .iqxin-set-edit{" +
  5206. "visibility:visible;" +
  5207. "opacity:0.8;" +
  5208. "}" +
  5209. "#nSearchList.iqxin-set-active," +
  5210. ".iqxin-set-edit.iqxin-set-active," +
  5211. ".iqxin-set-title-del.iqxin-set-active," +
  5212. ".iqxin-set-del.iqxin-set-active {" +
  5213. "visibility:visible !important;" +
  5214. "opacity:1 !important;" +
  5215. "}" +
  5216. "#btnEle span.iqxin-btn-active{" +
  5217. "color:red;" +
  5218. "border-color:red;" +
  5219. "}" +
  5220. "#newSearchListBox," +
  5221. "#newSearchBox{" +
  5222. "transition:0.3s;" +
  5223. "transform : translateY(0%);" +
  5224. "opacity: 1;" +
  5225. "position:fixed;" +
  5226. "z-index:200000100;" +
  5227. "top:50%;" +
  5228. "left:50%;" +
  5229. "padding:22px;" +
  5230. "background:rgb(29, 29, 29);" +
  5231. "border-radius:4px;" +
  5232. "color: #e8e8e8;" +
  5233. "margin: -149px -117px;" +
  5234. "}" +
  5235. "#newSearchListBox input," +
  5236. "#newSearchBox input{" +
  5237. "border: none;" +
  5238. "padding: 4px 0 4px 5px;" +
  5239. "border-radius: 4px;" +
  5240. "outline: none;" +
  5241. "}" +
  5242. "#newSearchListBox input:focus," +
  5243. "#newSearchBox input:focus {" +
  5244. "background: #f1d2d2;" +
  5245. "transition: 0.5s;" +
  5246. "}" +
  5247. ".addItemBoxBtn{" +
  5248. "cursor: pointer;" +
  5249. "background: #fff;" +
  5250. "border: none;" +
  5251. "border-radius: 4px;" +
  5252. "padding: 4px 10px;" +
  5253. "color: #333;" +
  5254. "transition:0.3s;" +
  5255. "}" +
  5256. "#xin-centerDisplay select," +
  5257. "#xin-newtab select{" +
  5258. "height:auto;" +
  5259. "border: none;" +
  5260. "outline: none;" +
  5261. "color: #3ABDC1;" +
  5262. "font-size: 1em;" +
  5263. "font-family: arial,sans-serif;" +
  5264. "appearance: none;" +
  5265. "-moz-appearance: none;" +
  5266. "-webkit-appearance: none;" +
  5267. "padding: 0px 5px;" +
  5268. "cursor: pointer;" +
  5269. "text-decoration: underline;" +
  5270. "background: var(--background-btn-qxin);" +
  5271. "}" +
  5272. "#titleEdit{" +
  5273. "width:6em;" +
  5274. "}" +
  5275. // 按钮效果 : 确定 取消按钮
  5276. ".iqxin-closeBtn," +
  5277. ".iqxin-enterBtn{" +
  5278. "box-sizing: border-box;" +
  5279. "}" +
  5280. ".iqxin-closeBtn:hover{" +
  5281. "background: #ff6565;" +
  5282. "border-color: #ff6565;" +
  5283. "color: #fff;" +
  5284. "}" +
  5285. ".iqxin-enterBtn:hover{" +
  5286. "background: #84bb84;" +
  5287. "border-color: #84bb84;" +
  5288. "color: #fff;" +
  5289. "}" +
  5290. "#iqxin-editCodeBox button{" +
  5291. "cursor:pointer;" +
  5292. "}" +
  5293.  
  5294. // 关闭按钮
  5295. "#xin-close{" +
  5296. "background:white;" +
  5297. "color:#3ABDC1;" +
  5298. "line-height:20px;" +
  5299. "text-align:center;" +
  5300. "height:20px;" +
  5301. "width:20px;" +
  5302. "text-align:center;" +
  5303. "font-size:20px;" +
  5304. "padding:10px;" +
  5305. "border: 3px solid #3ABDC1;" +
  5306. "border-radius: 50%;" +
  5307. "transition: .5s;" +
  5308. "top: -20px;" +
  5309. "right:-20px;" +
  5310. "position: absolute;" +
  5311. "box-sizing: unset;" +
  5312. "}" +
  5313. "#xin-close::before{" +
  5314. "content:'\\2716';" +
  5315. "margin:-10px;" +
  5316. "}" +
  5317. "#xin-close:hover{" +
  5318. "background: indianred;" +
  5319. "border-color: indianred;" +
  5320. "color: #fff;" +
  5321. "}" +
  5322. // type[range] 效果
  5323. "input[type=range] {" +
  5324. "outline: none;" +
  5325. "-webkit-appearance: none;" +
  5326. "background:-webkit-linear-gradient(left,#3ABDC1,#83e7ea) no-repeat, #fff;" +
  5327. "border-radius: 10px; /*这个属性设置使填充进度条时的图形为圆角*/" +
  5328. "}" +
  5329. "input[type=range]::-webkit-slider-thumb {" +
  5330. "-webkit-appearance: none;" +
  5331. "} " +
  5332. "input[type=range]::-webkit-slider-runnable-track {" +
  5333. "height: 10px;" +
  5334. "border-radius: 10px; /*将轨道设为圆角的*/" +
  5335. "box-shadow: 0 1px 1px #def3f8, inset 0 .125em .125em #0d1112; /*轨道内置阴影效果*/" +
  5336. "}" +
  5337. "input[type=range]::-webkit-slider-thumb {" +
  5338. "-webkit-appearance: none;" +
  5339. "height: 18px;" +
  5340. "width: 18px;" +
  5341. "margin-top: -5px; /*使滑块超出轨道部分的偏移量相等*/" +
  5342. "background: #fff; " +
  5343. "border-radius: 50%; /*外观设置为圆形*/" +
  5344. "border: solid 0.125em rgba(205, 224, 230, 0.5); /*设置边框*/" +
  5345. "box-shadow: 0 .125em .125em #3b4547; /*添加底部阴影*/" +
  5346. "}" +
  5347. // 导入
  5348. "#importingBox{" +
  5349. "position:fixed;" +
  5350. "width:350px;" +
  5351. "top:50%;" +
  5352. "left:50%;" +
  5353. "transform:translate(-50%,-50%);" +
  5354. "padding: 15px 30px;" +
  5355. "border-radius: 4px;" +
  5356. "background:#1D1D1D;" +
  5357. "color:#fff;" +
  5358. "}" +
  5359. "#importingBox li{" +
  5360. "margin:5px;" +
  5361. "border-bottom:1px solid #3ACBDD;" +
  5362. "}" +
  5363. "#importingBox li p{" +
  5364. "white-space: nowrap;" +
  5365. "overflow: hidden;" +
  5366. "text-overflow: ellipsis;" +
  5367. "margin-top:0;" +
  5368. "margin-bottom:0;" +
  5369. "}" +
  5370. ".xin-importing-item{" +
  5371. "cursor:pointer;" +
  5372. "}" +
  5373. "";
  5374. head = document.getElementsByTagName('head')[0];
  5375. style = document.createElement('style');
  5376. style.type = 'text/css';
  5377. style.innerHTML = css;
  5378. head.appendChild(style);
  5379. // 关闭设置菜单中的所有动画效果
  5380. if(!getSettingData.transtion){
  5381. GM_addStyle("#settingLayer," +
  5382. "#btnEle span," +
  5383. "#btnEle2," +
  5384. ".iqxin-set-del," +
  5385. "span.iqxin-additem," +
  5386. "#newSearchBox," +
  5387. ".addItemBoxBtn," +
  5388. "#xin-close," +
  5389. "#settingLayerMask{" +
  5390. "transition:none;"+
  5391. "}"+
  5392. "#settingLayerMask{" +
  5393. "backdrop-filter:none;" +
  5394. // "background-color: rgba(0,0,0,.7);" +
  5395. "}"+
  5396. "");
  5397. }
  5398. }
  5399. };
  5400.  
  5401. // 增加设置按钮
  5402. if (getSettingData.setBtnOpacity>=0){
  5403. var setBtn = document.createElement("span");
  5404. setBtn.id = "setBtn";
  5405. GM_addStyle("#setBtn{" +
  5406. "opacity:"+getSettingData.setBtnOpacity+";"+
  5407. "transition:0.5s;"+
  5408. "}"+
  5409. "span#setBtn:hover{" +
  5410. "opacity:1;" +
  5411. "}" +
  5412. "");
  5413. setBtn.innerHTML = `<img style='margin:0 0 -3px 6px;width:16px;vertical-align: baseline;display:inline-block;cursor:pointer;' src="data:image/svg+xml,%3Csvg t='1666950165377' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='11048' width='32' height='32'%3E%3Cpath d='M337.333 517.667c77.406 0 141.974 54.967 156.8 127.998l440.534 0.002c17.673 0 32 14.327 32 32 0 17.496-14.042 31.713-31.471 31.995l-0.53 0.005-440.534 0.001C479.307 782.7 414.74 837.667 337.333 837.667S195.36 782.699 180.534 709.668l-99.2-0.001c-17.674 0-32-14.327-32-32 0-17.497 14.041-31.713 31.47-31.996l0.53-0.004 99.2-0.002c14.825-73.03 79.393-127.998 156.8-127.998z m0 64c-53.019 0-96 42.98-96 96 0 53.019 42.981 96 96 96 53.02 0 96-42.981 96-96 0-53.02-42.98-96-96-96z m341.334-405.334c77.406 0 141.974 54.968 156.799 127.999l99.2 0.001c17.674 0 32 14.327 32 32 0 17.497-14.041 31.713-31.47 31.996l-0.53 0.004-99.2 0.003c-14.826 73.03-79.394 127.997-156.8 127.997-77.405 0-141.973-54.967-156.798-127.997l-440.535-0.003c-17.673 0-32-14.327-32-32 0-17.496 14.042-31.713 31.471-31.995l0.53-0.005 440.534-0.001c14.825-73.031 79.393-127.999 156.799-127.999z m0 64c-53.02 0-96 42.981-96 96 0 53.02 42.98 96 96 96 53.019 0 96-42.98 96-96 0-53.019-42.981-96-96-96z' p-id='11049'%3E%3C/path%3E%3C/svg%3E">`
  5414. document.querySelector("#sej-container").appendChild(setBtn);
  5415. var sejSet = null;
  5416.  
  5417. setBtn.addEventListener("click",setBtnStart);
  5418. };
  5419.  
  5420. // 注册(不可用)菜单
  5421. GM_registerMenuCommand("search jump 搜索跳转设置",setBtnStart);
  5422.  
  5423. function setBtnStart(){
  5424. if(!document.querySelector("#settingLayerMask")){
  5425. sejSet = new SEJsetting();
  5426.  
  5427. var sej_save = document.querySelector("#xin-save");
  5428. // var sej_close = document.querySelector("#xin-close");
  5429. // var sej_reset = document.querySelector("#xin-reset");
  5430. var sej_addDel = document.querySelector("#xin-addDel");
  5431. var sej_edit = document.querySelector("#xin-modification");
  5432.  
  5433. // sej_save.addEventListener("click",function(){sejSet.saveData();sejSet.hide();if(!getSettingData.debug)window.location.reload();});
  5434. sej_save.addEventListener("click",function(){sejSet.saveData();sejSet.hide();sejSet.reloadSet();});
  5435. // sej_close.addEventListener("click",function(){sejSet.hide();});
  5436. // sej_reset.addEventListener("click",function(){sejSet.reset();sejSet.hide();window.location.reload();});
  5437. sej_addDel.addEventListener("click",function(e){sejSet.addDel(e);});
  5438. // sej_edit.addEventListener("click",function(e){sejSet.addEdit(e);});
  5439. sej_edit.addEventListener("click",function(){sejSet.editCodeBox();});
  5440.  
  5441. window.addEventListener("resize",sejSet.windowResize.bind(sejSet));
  5442. }
  5443. sejSet.show();
  5444. }
  5445.  
  5446. // 获取存储的数据信息
  5447. function get_data(){
  5448. setData = GM_getValue("searchEngineJumpData");
  5449. }
  5450. var setData = null;
  5451. // get_data();
  5452. }
  5453.  
  5454. // 消息提示框
  5455. // 目前只是为了给用户一个反馈。 - 成功了么 - 嗯,成功了
  5456. var iqxinTimerGlobalTip = null
  5457. function iqxinShowTip(text,duration){
  5458. console.log("iqxin -- 消息提示框: ", text);
  5459. var odom = document.querySelector("#iqixn-global-tip");
  5460. if(!odom){
  5461. odom = document.createElement("iqxinDiv");
  5462. odom.id = "iqixn-global-tip";
  5463. odom.style.cssText = "" +
  5464. "opacity: 0;" +
  5465. "height: 25px;" +
  5466. "line-height: 25px;" +
  5467. "letter-spacing: 1px;" +
  5468. "font-size: 1em;" +
  5469. "color: #fff;" +
  5470. "padding: 5px 20px;" +
  5471. "border-radius: 5px;" +
  5472. "background-color: #666;" +
  5473. "position: fixed;" +
  5474. "z-index: 200000001;" +
  5475. "left: 50%;" +
  5476. "bottom: 5%;" +
  5477. "transform: translate(-50%);" +
  5478. "transition: .4s;" ;
  5479. document.body.appendChild(odom);
  5480. }
  5481.  
  5482. odom.innerHTML=text;
  5483. odom.style.opacity=1;
  5484.  
  5485. duration = duration?duration:1500;
  5486. //防止持续时间内多次触发提示
  5487. if(!iqxinTimerGlobalTip){
  5488. iqxinTimerGlobalTip = setTimeout(function(){
  5489. odom.style.opacity=0;
  5490. iqxinTimerGlobalTip = null;
  5491. },duration);
  5492. }
  5493. }
  5494.  
  5495. // 从此处开始执行
  5496. var debug;
  5497. function reloadDebug(bool) {
  5498. debug = bool ? console.info.bind(console) : function() {};
  5499. }
  5500.  
  5501. if (window.self != window.top) return;
  5502.  
  5503. var url = window.location.href;
  5504. // var hashList = [
  5505. // /^https?:\/\/www\.baidu\.com\/$/i,
  5506. // /^https?:\/\/www\.google(?:\.[A-z]{2,3}){1,2}\/$/i,
  5507. // /^https?:\/\/www\.google(?:\.[A-z]{2,3}){1,2}\/[^#]*#(?:&?q=|.+?&q=).+/,
  5508. // // /^https?:\/\/searx\.me\//i,
  5509. // ];
  5510. // 部分网站或内因或外因的原因加载缓慢,所以推迟插入
  5511. var delayList = [
  5512. /^https?:\/\/google\.infinitynewtab\.com\/\?q/,
  5513. /^https?:\/\/www\.zhihu\.com\/search\?/,
  5514. /^https?:\/\/www\.iciba\.com\/word\?/,
  5515. /^https?:\/\/neeva\.com\/search\?/i,
  5516. /^https?:\/\/s\.taobao\.com\/search/,
  5517. ]
  5518.  
  5519. // var hashListTag = hashList.some(function hashUrl(element, index, array){
  5520. // return ~url.search(element);
  5521. // });
  5522. var delayListTag = delayList.some(function hashUrl(element, index, array){
  5523. return ~url.search(element);
  5524. });
  5525.  
  5526. // if (hashListTag){
  5527. // var oldTitle = document.title;
  5528. // var newTitle = "";
  5529. // var timer = setInterval(function(){
  5530. // // console.log("循环中",newTitle,oldTitle);
  5531. // newTitle = document.title;
  5532. // if (document.querySelector("#appbar") && !document.querySelector("sejspan")){
  5533. // // console.log("new");
  5534. // iqxinstart();
  5535. // } else if (document.querySelector("sejspan")){
  5536. // // console.log("已存在");
  5537. // clearInterval(timer);
  5538. // }else if (oldTitle!=newTitle){
  5539. // // console.log("不存在开始插入");
  5540. // iqxinstart();
  5541. // }
  5542. // },1000)
  5543. // } else
  5544. if (delayListTag){
  5545. setTimeout(function(){
  5546. // console.log("延时运行");
  5547. var sejSpan = document.querySelector('sejspan');
  5548. if(sejSpan){
  5549. return;
  5550. } else{
  5551. iqxinstart();
  5552. }
  5553. },2000);
  5554. } else {
  5555. // console.log("普通插入");
  5556. iqxinstart();
  5557. }
  5558. if (true) {
  5559. // console.log('iqxin添加标题节点监视器: title');
  5560. // 延时添加标题监视器, 应对 youtube
  5561. setTimeout(function(){
  5562. var watch = document.querySelector('title');
  5563. // console.log("titile: ",watch);
  5564. // console.log("titile: ",document.title);
  5565. new (window.MutationObserver || window.WebKitMutationObserver)(function(mutations){
  5566. console.log('iqxin标题发生了变化', document.title);
  5567. var sejSpan = document.querySelector('sejspan')
  5568. if(!sejSpan){
  5569. iqxinstart();
  5570. }else{
  5571. sejSpan.parentNode.removeChild (sejSpan);
  5572. iqxinstart();
  5573. }
  5574. }).observe(watch, {childList: true, subtree: true, characterData: true});
  5575. },1000)
  5576. }
  5577. })();
  5578.  

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址