Auto Focus

Auto Focus on load.

  1. // ==UserScript==
  2. // @name Auto Focus
  3. // @description:en Auto Focus on load.
  4. // @version 1.0
  5. // @namespace http//example.com
  6. // @include *
  7. // @description Auto Focus on load.
  8. // ==/UserScript==
  9. (function(){
  10. var d = document;
  11. var settings = [
  12. // はてなブックマーク
  13. {
  14. site: "b.hatena.ne.jp",
  15. find: function(){
  16. var helper = function(id){
  17. var f = d.getElementById(id);
  18. return f && f.getElementsByTagName("input")[0];
  19. }
  20. return helper("tag-search-related-form") ||
  21. helper("tag-search-form");
  22. }
  23. }
  24. ];
  25. for(var i = 0, n = settings.length; i < n; i++){
  26. var setting = settings[i];
  27. var regex = getRegex(setting.site);
  28. if(location.href.match(regex)){
  29. var found = setting.find();
  30. found && found.focus();
  31. }
  32. }
  33. function getRegex(s){
  34. s = s.replace(".", "\\.");
  35. s = s.replace("*", ".*");
  36. s = s.replace("?", "\\?");
  37. s = s.replace("/", "\\/");
  38. s = "^http:\\/\\/" + s;
  39. return new RegExp(s, "i");
  40. }
  41. })();