新nicovideo Thumbinfo Popup 実装待ち機能一覧

作業を長いこと放置していたので現状のまとめを覚え書き
4/3追記: 現状に合わせて修正
4/4追記: さらに修正。個人的によく使う機能は全部実装できたかな
4/5追記: 旧スクリプトの機能はほぼ実装完了。改良版選択範囲ポップアップができあがったらとりあえずリリースします。
4/7追記: d:id:gifnksm:20090408:1239147297 の記事に移動しました

やったこと

  • スクリプトのソースを全面的に書き換え

変更・修正点

  • 非アクティブなポップアップは半透明に
  • 子ウインドウが消えてから親ウインドウが消えるまでに600ms間が開くようにした
    • 旧バージョンではマウスがウインドウ上から外れると,全ての祖先ウインドウが同時に消えた
  • area要素で表示されるポップアップの位置の改良
    • area要素のshape属性,coord属性をパースしてリンク範囲を適切に計算
    • 表示位置が著しく改善された例→ORGONE TOWER LABORATORY
  • position: fixed;な要素内のリンクをポップアップさせた場合の表示位置を正しくした
  • 全ページでポップアップそのものをposition: fixed; にした
  • スタイルシートの外部ファイル化
  • 旧バージョンで出ていた謎のエラーが出なくなった
  • 投稿者名表示の改良
    • 公式動画の場合,動画IDから判断した適切なコンテンツホルダ名を表示するようにした
  • タグ周りの微妙な改善
    • カテゴリタグを示すマークを表示するように(nicovideo Add Stars to Tagsと同じ動作)
    • 自分の母国を指定できるようにした
      • 例:母国を'tw'にすると台湾のタグが最初に表示され,その後に日本語タグが続く,など
  • 海外サーバ対応(適当な実装)
    • http://tw.nicovideo.jp/watch/xxxのリンクでもポップアップするとかそんな感じ

修正予定

  • ポップアップ位置の不具合 修正済み
    • NicoNicoPlaylistウインドウ内のリンクを表示させるとポップアップ位置が大きくずれることがある
    • position: fixed; 内のリンクとの相性がよくない模様
  • 選択範囲のポップアップの改良
    • 現状は意図せぬタイミングで表示されることがよくある。特定のキーを押したときのみ表示などの改良を行う

旧版の機能のうちまだ実装していないもの

  • 動画投稿者名の表示 実装済み
  • watch ページでのsmilevideo.jpへのリンクのポップアップ 実装済み
  • watch ページでのposition: fixed;(Flashの前面にポップアップを表示する) 実装済み
  • String.prototype.createLinkの改良 実装済み
    • http://dic.nicovideo.jp/a/id を参考に
    • 内部処理のdocumentFragment化
    • sm12345mylist/12345のようなテキストにもリンクを張る
      • 現状はsm12345の部分のみリンクが張られる
  • コミュニティ動画のポップアップ
  • 選択範囲ポップアップ

新機能予定

  • ポップアップ対象ページの追加
    • YouTube
      • サムネイルのみ?実装するときに詳しく調べる
    • 大百科ポップアップ
    • マイリストポップアップ
    • タグ検索ポップアップ
      • 調子に乗ると「短期間での連続アクセスうんたらかんたら」言われそうではある
  • iframe ポップアップの位置を改良
  • コメントの表示
    • 表示・非表示を切り替えられるように
  • 設定ウインドウ
  • ch000, lv000 への対応
    • 対応方法は未定。特に後者
  • どうしても情報が取得できない場合,watchページを見にいく
    • 公式ch・削除済み動画など
  • 大百科へのリンクを張る 実装済み
    • タグ,動画共に記事が存在するときだけ表示する

要望とか

  • 選択範囲ポップアップのポップアップ数上限設定
  • キー入力によるポップアップの消去
  • コミュニティのポップアップ