概要
window.showmodalDialogとは、ブラウザでモーダルダイアログボックス(modal)を生成するメソッドです。showModalDialogメソッドが他ブラウザには反応されない件で作成しました。
このメソッドは現在、他ブラウザやモバイルには全く動作できないメソッドなので、使用をお勧めしないです。
切り替えるけど、Javascriptしか使えない環境の場合は、
windows.openerで切り替えられます。
showModalDialogとは
IE 4.0で実装されたメソッドで、ブラウザでモーダルダイアログボックス(modal box)を生成するメソッドです。ブラウザのShowModalDialogに対する互換性
①IE:最新バージョン(IE 11)も使えます。 ②Chrome:Chrome43バージョン(2015年)から廃止されました。 ③Firefox:Firefox56バージョン(2017年)から廃止されました。 ④Safari:5.1(2011年の)で実装されましたが、セキュリティ上の問題が発見され、廃止されました。 ⑤Microsoft Edge:サポートされていません。このメソッドでIEと他ブラウザを同時対応したい時は
他ブラウザには実装されていないメソッドの為、メソッドをオーバーライドする必要があります。example.js
//ブラウザを判別する
function checkBrowser() {
var agent = window.navigator.userAgent.toLowerCase();
// Internet Explorer
if(userAgent.indexOf('msie') != -1 ||
userAgent.indexOf('trident') != -1) {
...
// 他ブラウザ
} else {
...
}
}
//他ブラウザでshowmodalDialogをオーバーライドする
function showmodalDialog(first, second, third) {
//ロジックなし
//元のメソッドはshowmodalDialog(url, argument);
}
function test() {
if(checkBrowser()) {
...
} else {
...
}
}