duckduckgo script

make duckduckgo convenient

当前为 2021-09-27 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name duckduckgo script
  3. // @namespace http://duckduckgo.com/
  4. // @version 1.2
  5. // @description make duckduckgo convenient
  6. // @author charles
  7. // @match https://duckduckgo.com/?q=*
  8. // @match https://duckduckgo.com/?t=*
  9. // @icon https://www.google.com/s2/favicons?domain=duckduckgo.com
  10. // @grant GM_addStyle
  11. // ==/UserScript==
  12.  
  13. GM_addStyle(`
  14. .result__title > .result__a,.result__title > .result__a:hover, .result__title > .result__a:active {
  15. color: rgb(105, 151, 244) !important;
  16. }
  17. .result__title > .result__a:visited, .result__title > .result__a:visited:hover {
  18. color: rgb(202, 97, 255) !important;
  19. }
  20. .result__body > .result__snippet > b {
  21. color: red !important;
  22. }
  23. `);
  24.  
  25. (function () {
  26. "use strict";
  27.  
  28. // Your code here...
  29. var pre_result_length = 0;
  30. var counter = 0;
  31. var change_result_node = function () {
  32. var result = document.getElementsByClassName("results_links_deep");
  33. var links = document.getElementById("links");
  34. if (result.length <= pre_result_length && counter < 100) {
  35. setTimeout(() => {
  36. counter = counter + 1;
  37. change_result_node();
  38. }, 50);
  39. } else {
  40. counter = 0;
  41. pre_result_length = result.length;
  42. for (var i = 0; i < result.length; i++) {
  43. var clone_result = result[i].cloneNode(true);
  44. var img_parent = result[i].getElementsByClassName(
  45. "result__extras__url"
  46. )[0];
  47. var img = img_parent.getElementsByClassName("result__icon")[0];
  48. clone_result
  49. .getElementsByClassName("result__extras__url")[0]
  50. .replaceChild(
  51. img,
  52. clone_result.getElementsByClassName("result__icon")[0]
  53. );
  54. links.replaceChild(clone_result, result[i]);
  55. }
  56. add_listener_to_more_result(0);
  57. }
  58. };
  59. var add_listener_to_more_result = function (time) {
  60. var more_result_node = document.getElementsByClassName("result--more__btn");
  61. //console.log(more_result_node.length);
  62. if (more_result_node[0] === undefined && time < 100) {
  63. setTimeout(() => {
  64. add_listener_to_more_result(time + 1);
  65. }, 50);
  66. } else if (more_result_node[0] !== undefined) {
  67. more_result_node[0].addEventListener("click", () => {
  68. change_result_node();
  69. });
  70. }
  71. };
  72. document.onreadystatechange = function () {
  73. if (document.readyState == "complete") {
  74. change_result_node();
  75. }
  76. };
  77. })();

QingJ © 2025

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