タブブラウザの特長を活かして検索
今回はタブブラウザの特長を活かしたスクリプトを作成します。タブブラウザのメリットはデスクトップにウィンドウがあふれかえらないことです。そこで、検索キーワードを入力したらグーグルとヤフーで同時に検索してタブウィンドウに表示するスクリプトを作成してみます。
Lunascapeの拡張スクリプトの作り方はこちらを参考にしてください。
日本語では駄目な場合もある
検索する場合には検索するキーワードを入力する必要があります。Lunascapeの拡張スクリプトではJavaScriptで一般的なprompt()を使用することができません。そこで、代わりにInputBox()を使用します。InputBox()はprompt()と同じように2つのパラメータがあります。最初のパラメータにはダイアログウィンドウのタイトル文字列、2番目のパラメータにはデフォルトで入力しておきたい文字列を指定します。promtp()のパラメータと同じなのでprompt()を使ったことがあれば特に迷うことはないでしょう。
検索エンジンのヤフーとグーグルには検索キーワードをURLパラメータとして渡せば自動的に検索結果を返してくれます。その際、注意しなければいけないのは文字コードを指定するURLパラメータはshift_jis
にするという点です。一般的に使用されているutf-8では文字化けしてしまい正しく検索されません。
URLパラメータをNewWindow()の最初のパラメータに渡せば自動的にタブウィンドウが作成され検索結果が表示されます。
注意
前回の解説での旧式で実行するにチェックを入れてましたが、今回は入れません。
スクリプト001
function OnClick(){
// 複数の検索サイトで一括検索
var google = "http://www.google.com/search?client=safari&rls=ja-jp&ie=shift_jis&oe=shift_jis&q=";
var yahoo = "http://search.yahoo.co.jp/search?search.x=1&fr=top_ga1&tid=top_ga1&ei=shift_jis&p=";
var itemName = Lunascape.InputBox("検索キーワードを入れてください", "iPod");
Lunascape.NewWindow(google+itemName, true);
Lunascape.NewWindow(yahoo+itemName, false);
}