Popup: setDefaultMessageboxFrame()
メッセージボックスのデフォルトのフレームを変更します。
構文
Popup.setDefaultMessageboxFrame(frameClass) => MessageboxFrame
引数
-
frameClass
:new () => MessageboxFrame
変更したいフレームのクラスオブジェクトです。
PopupFrame
を継承したMessageboxFrame
を継承している必要があります。
返値: new () => MessageboxFrame
更新前に登録されていたポップアップのフレームのクラスオブジェクトです。
例外
TypeError
- 引数
frameClass
がMessageboxFrame
の派生クラスではない場合。
- 引数
例
const { Popup, MessageboxFrame } = await Alier.import("/alier_sys/Popup.js");
const html = `
<div id="my-messagebox-overlay" data-ui-component data-active-events="click">
<div id="my-messagebox">
<p id="popupText" data-ui-component data-primary="innerText"></p>
<div id="buttons" data-ui-component></div>
</div>
</div>
`;
class MyMessageboxPopup extends MessageboxFrame {
constructor() {
super();
this.loadContainer({ text: html, id: "my-messagebox-overlay" });
this.relateElements(this.collectElements(this.container));
}
}
let oldPopup = Popup.setDefaultMessageboxFrame(MyMessageboxPopup);
let result = Popup.messagebox("any text");
console.log(result); // "ok"
解説
messagebox()
を呼び出した時に生成されるポップアップのフレームを変更します。