window.operaのメソッド

javascript:var a=[];for(var b in window.opera){a.push(b)}alert(a.join('\n'));void(0);

とかやると、こんな感じになる。

postError
addEventListener
removeEventListener
defineMagicFunction
defineMagicVariable
getOverrideHistoryNavigationMode
setOverrideHistoryNavigationMode
getPreference
getPreferenceDefault
setPreference
connect
disconnect
isConnected
buildNumber
version
collect

仕様に書いてある他にもいっぱいあるということがわかった。

使用可能なメソッドとイベント

window.opera.defineMagicVariable
window.opera.defineMagicFunction
window.opera.addEventListener
window.opera.removeEventListener
window.opera.setOverrideHistoryNavigationMode
window.opera.getOverrideHistoryNavigationMode

ユーザー JavaScript による制御: 仕様

setPreference というのは、opera:config の設定値を書き換えたりも出来るってことかな?

browser.js 読んでみるかな。


どうやら、NintendoDS Browserでは下のメソッドが使えるようだ。

operaオブジェクト?

上でoperaオブジェクトが見つかったので、プロパティを見てみる。

他のブラウザからoperaオブジェクトを参照するとエラーになるので、window.operaがあるかどうかをチェックすること。

for(in)で列挙した結果(すべてメソッド):

  • opera.buildNumber()
    • [確]ビルド番号を返す: 0
  • opera.version()
    • [確]バージョンを返す: 7.0
  • opera.collect()
    • [確]JavaScriptのガベージコレクトを試みる
  • opera.oomMetaOperation(???)
    • 不明
  • opera.bookmark(???)
    • 不明
  • opera.nrBookmarks(???)
    • 不明
  • opera.engineString(???)
    • 不明
  • opera.tipString(???)
    • 不明
  • opera.SetStartpageBookmarkPrefs(Number)
    • [?]Startpageフォルダのブックマークに関連
  • opera.firstString(???)
    • 不明
http://www3.ocn.ne.jp/~miotti/ds/localhost.html

opera.collect とかおもしろそう。


browser.js 見てたら、こんな記述も見つけた。

if (window.opera && opera.createWorkerPool &&
navigator.mimeTypes["application/x-googlegears"] &&
navigator.mimeTypes["application/x-googlegears"].enabledPlugin
) {
  window.GearsFactory = function()
  {
    var element = document.createElement("object");
    element.style.display = "";
    element.type = "application/x-googlegears";
    document.documentElement.insertBefore(element,
    document.documentElement.firstChild);
    element.getBuildInfo(); // to make sure init is complete
    return element;
  }
}

書いてある内容はよくわからないけど、opera.createWorkerPoolって?

Gears 対応を睨んでのことかな。


これも忘れてた。

opera.postError は Firebug で言う console.log の替わり。

getPreference
getPreferenceDefault
setPreference

このあたりは、opera:config の HTML ソースに書かれていることが分かった。

connect
disconnect
isConnected

これらは opera:debug (Dragonfly で別の Opera 内のページをデバッグするときに使うページ) で使われていることが分かった。