「新しいウィンドウを開く」の編集履歴(バックアップ)一覧に戻る

新しいウィンドウを開く - (2012/12/20 (木) 06:44:35) の編集履歴(バックアップ)


JavaScriptのopenやopenDialogを使う

var features = 'chrome,centerscreen';
var newWindow = window.open(url, '_blank', features);
var features = 'chrome,resizable,centerscreen';
var newWindow = window.openDialog(url, '_blank', features, arg1, arg2, ...);

XPCOMを使う

var Cc = Components.classes;
var Ci = Components.interfaces;
Components.utils.import("resource://gre/modules/Services.jsm");
// nsISupportsArray の作成 今は nsIArray でも良いようだ
var array = Cc['@mozilla.org/supports-array;1']
    .createInstance(Ci.nsISupportsArray);
var variant = Cc['@mozilla.org/variant;1']
    .createInstance(Ci.nsIVariant)
    .QueryInterface(Ci.nsIWritableVariant);
variant.setFromVariant(arg);
array.AppendElement(variant);
// nsISupportsArray 作成ここまで
var features = 'chrome,toolbar,resizable,centerscreen';
Services.ww.openWindow(null, url, '_blank', features, array);
arrayやfeaturesが必要ない時はnullを渡す。省略してしまうと例外エラー。