[全体] [技術メモ] 各一覧の該当ページへ

googleガジェットを作ってみた

[技術メモ] 2008年10月30日(木曜日) 23:55

iGoogleにポータル乗り換え

My Yahoo!から

ポータルよりもっとふさわしい言葉がありそうですが、私は普段、よくMy Yahoo!を使っています。ふとしたきっけでiGoogleも使ってみようと重い、半乗り換え状態の近頃。

乗り換え的には不足が多い

そりゃ「慣れた」環境のが良いに決まってますよね。
iGoogleはやっぱり向いてないや……とも思いましたが、iGoogleには「ガジェット」があるのですね。つまり不足分は自分で作れって補える。旬を過ぎた感の強い「ガジェット」ですが、ここらで体験してみるとします。

Yahoo!ファイナンスの検索フォームを

ソフトバンクやソニーも熱いらしいなぁ……とか電力どうよ?等々、Yahoo!ファイナンスの検索が多い近頃。まずは、この検索窓をiGoogleに付けてみる事にしました。

hollo world!

Googleガジェットの作り方
このページに助けられました。

  • xmlフォーマットでファイルを作る
  • どこかのサーバに置く
  • My Gadgetsから読み込む

この Hollo world! が公式ではすぐには分からず(ノ∀`)

YahooファイナンスはEUC-JP( ゚д゚ )

googleガジェットは近頃安定しているUTF-8……ガーン!YahooファイナンスがEUC-JPでフォームの値が文字化けする(ノ∀`)
前々より使ってみたいと思っていたEscape Codec Library: ecl.js(インフォシークのアイコンは楽天なんだ……)で文字コード変換を実装。しかしjavascriptで文字コード変換とは驚愕です。
とりあえず、変換はこれでクリアできました。

細かい罠が沢山……

%25が付加される

普通にサブミットするとEUC-JPにエンコードしたフォーム値に「%25」が勝手に付加されてしまう環境が多くありました。これは、submitを辞め、検索ボタンonclick時に生成URLをwindow.openすることで回避。

enterでsubmitしたい

submitを止めたので、入力フォーム上でenterキーを押しても検索されません。該当フォームでonkeypressを拾いenterキーを検出し検索窓関数へ飛ばす事で実装。しかし、FireFoxではwin,mac共に動作せず。(イベントの拾い方を変えてOKに)

それでもwebkitはsubmitされてしまう

formにonsubmit=”return false;” と追加記述する事で回避できました。

とりあえず動作

奇妙な挙動を強引に回避し、今日のところはこんな感じに。IE6、IE7、FireFox、Opera、webkit系(MacSafari3、chrome)でそれなりに。

トラックバック URL :

コメントをどうぞ

表示アバターはGravatarsです。
メールアドレスに対してアバター画像を登録できます。