[Javascript]IEで開けたshowModalDialogがChromeではダメだった件【自分用メモ】
概要
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と他ブラウザを同時対応したい時は
他ブラウザには実装されていないメソッドの為、メソッドをオーバーライドする必要があります。
//ブラウザを判別する
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 {
...
}
}
JavascriptでshowmodalDialogの切り替え
window.openで似せて作成できる。
参照先
window.showmodalDialog
Author And Source
この問題について([Javascript]IEで開けたshowModalDialogがChromeではダメだった件【自分用メモ】), 我々は、より多くの情報をここで見つけました https://qiita.com/LoveYuzulemon/items/b2647618795cb4c058b0著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .