greasemonkey:google-search-date-limiter
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン最新のリビジョン両方とも次のリビジョン | ||
greasemonkey:google-search-date-limiter [2011/04/27 22:31] – 0.3.0 インスタント検索に対応 dgbadmin | greasemonkey:google-search-date-limiter [2014/08/24 22:40] – 0.7.0 dgbadmin | ||
---|---|---|---|
行 5: | 行 5: | ||
===== 使い方 ===== | ===== 使い方 ===== | ||
- | インストールすると、テキストボックスと検索ボタンの間に期間を指定する選択リスト(ドロップダウンリスト)が表示される\\ | + | インストールすると、テキストボックスと検索ボタンの間に期間を指定する選択リスト(ドロップダウンリスト)が表示される |
{{: | {{: | ||
+ | |||
+ | ※この画面イメージは古いGoogle検索のときのもの | ||
期間を指定したい時だけ、好きな期間を選択して検索すればOK。 | 期間を指定したい時だけ、好きな期間を選択して検索すればOK。 | ||
行 15: | 行 18: | ||
- | ===== インストール ===== | + | ===== ダウンロード・インストール ===== |
- | [[http://0-oo.net/ | + | [[https://0-oo.googlecode.com/ |
行 25: | 行 28: | ||
// @namespace | // @namespace | ||
// @description Add the date-range selector on Google Search. | // @description Add the date-range selector on Google Search. | ||
- | // @homepage | + | // @homepage |
- | // @version | + | // @version |
- | // @include | + | // @grant |
- | // @include | + | // @include |
- | // @include | + | // @include |
- | // @include | + | // @include |
+ | // @include | ||
+ | // @include | ||
+ | // @include | ||
// ==/ | // ==/ | ||
// | // | ||
// ( The MIT License ) | // ( The MIT License ) | ||
// | // | ||
- | (function(){ | + | setInterval(function() { |
- | var selStyle | + | if (document.getElementsByTagName(" |
+ | return; | ||
+ | } | ||
+ | | ||
+ | var btn = document.getElementsByName("btnG")[0]; | ||
- | var btn = document.getElementsByName(" | + | if (!btn) { |
- | btn.parentNode.setAttribute(" | + | return; |
- | var insertBefore | + | } |
+ | |||
+ | var btnDiv | ||
+ | btnDiv.setAttribute(" | ||
+ | |||
+ | // | ||
+ | var selected | ||
// | // | ||
var selNum = document.createElement(" | var selNum = document.createElement(" | ||
- | selNum.setAttribute(" | ||
selNum.appendChild(document.createElement(" | selNum.appendChild(document.createElement(" | ||
- | for (var i = 1; i < 13; i++) { | + | for (var i = 1; i < 60;) { |
var opt = document.createElement(" | var opt = document.createElement(" | ||
opt.appendChild(document.createTextNode(i)); | opt.appendChild(document.createTextNode(i)); | ||
+ | |||
+ | if (i == selected[2]) { | ||
+ | opt.selected = true; | ||
+ | } | ||
+ | |||
selNum.appendChild(opt); | selNum.appendChild(opt); | ||
+ | |||
+ | if (i < 10) { | ||
+ | i++; | ||
+ | } else { | ||
+ | i += 10; | ||
+ | } | ||
} | } | ||
- | insertBefore(selNum); | + | btnDiv.appendChild(selNum); |
// | // | ||
var selUnit = document.createElement(" | var selUnit = document.createElement(" | ||
- | selUnit.setAttribute(" | + | var units = {}, suffix = "" |
- | var units = {}; | + | |
if (navigator.language == " | if (navigator.language == " | ||
- | units = { d: " | + | units = { s: " |
+ | suffix = " 以内" | ||
} else { | } else { | ||
- | | + | |
+ | suffix = "(s)"; | ||
} | } | ||
行 69: | 行 96: | ||
opt = document.createElement(" | opt = document.createElement(" | ||
opt.setAttribute(" | opt.setAttribute(" | ||
- | opt.appendChild(document.createTextNode(units[val] + " 以内のみ" | + | opt.appendChild(document.createTextNode(units[val] + suffix)); |
+ | |||
+ | if (val == selected[1]) { | ||
+ | opt.selected = true; | ||
+ | } | ||
+ | |||
selUnit.appendChild(opt); | selUnit.appendChild(opt); | ||
} | } | ||
- | selUnit.selectedIndex = 2; | + | if (!selected[1]) { |
- | insertBefore(selUnit); | + | selUnit.selectedIndex = 5; |
+ | } | ||
- | document.forms[0].addEventListener(" | + | btnDiv.appendChild(selUnit); |
- | if (!selNum.selectedIndex) { | + | |
- | return; | + | btn.addEventListener(" |
- | } | + | var url = "/ |
- | + | ||
- | var url = location.href.split("/" | + | |
// | // | ||
url += encodeURIComponent(document.getElementsByName(" | url += encodeURIComponent(document.getElementsByName(" | ||
- | // | + | if (selNum.selectedIndex) { |
- | var qdr = " | + | // |
- | qdr += selNum.options[selNum.selectedIndex].text; | + | var qdr = " |
- | url += "& | + | qdr += selNum.options[selNum.selectedIndex].text; |
+ | url += "& | ||
+ | } | ||
+ | |||
+ | // | ||
+ | url += location.href.match(/& | ||
+ | |||
+ | // | ||
+ | url += location.href.match(/& | ||
// | // | ||
url += location.href.match(/& | url += location.href.match(/& | ||
- | // | + | location.href = url; |
- | setTimeout(function() { location.href = url; }, 900); | + | }, true); |
- | + | }, 10); //レンダリング後のタイミングを見計らう | |
- | //インスタント検索が無効な場合は既存のformに隠し項目を追加 | + | |
- | var hdn = document.createElement(" | + | |
- | hdn.setAttribute(" | + | |
- | hdn.setAttribute(" | + | |
- | hdn.value = qdr; | + | |
- | insertBefore(hdn); | + | |
- | }, false); | + | |
- | })(); | + | |
</ | </ | ||
greasemonkey/google-search-date-limiter.txt · 最終更新: 2015/09/19 21:14 by dgbadmin