ページ内検索バーに関する覚え書き

  • 検索バーを閉じる
gFindBar.closeFindBar()
  • 検索バーを開く
gFindBar.openFindBar()

または

gFindBar.onFindCmd()

onFindCmd() は Ctrl+F で呼ばれる関数。openFindBar()を呼んだ後でフォーカスの設定などをしている。

  • 検索バーが開いているかどうか
var findToolbar = document.getElementById("FindToolbar");
var isFindBarOpened = ! findToolbar.hidden;

これらを応用して、こんな関数が作れる。

function toggleFindBarVisible() {
  var bar = document.getElementById("FindToolbar");
  if (bar.hidden) {
    gFindBar.onFindCmd();
    // 検索文字列を消去する
    var findField = document.getElementById("find-field");
    findField.value = '';
  } else {
    gFindBar.closeFindBar();
  }
}

これをkeyconfigを使ってCtrl+Fに割り当てれば、キーボードだけでページ内検索バーの開閉ができるようになる。