Heim  >  Artikel  >  Web-Frontend  >  Lösung für die Inkompatibilität der Google-Methode showModalDialog() beim Erscheinen des Dialogfensters_Javascript-Kenntnisse

Lösung für die Inkompatibilität der Google-Methode showModalDialog() beim Erscheinen des Dialogfensters_Javascript-Kenntnisse

WBOY
WBOYOriginal
2016-05-16 15:15:411306Durchsuche

showModalDialog läuft im Test normal in IE und Firefox, aber in Google gibt es nach dem Klicken keine Antwort. Ich habe online nachgesehen und festgestellt, dass Google Chrome das modale Dialogfeld showModalDialog nicht zurückgibt eine Lösung

<script type="text/javascript">
//开启模式窗口
function showMyModal() {
var url = "SelectUser.aspx";
//传入参数示例
var modalReturnValue = myShowModalDialog(url, window, 300, 500);
//alert(modalReturnValue.name);
//窗口关闭后执行某些方法
//TODO sth
}
//弹出框google Chrome执行的是open
function myShowModalDialog(url, args, width, height) {
var tempReturnValue;
if (navigator.userAgent.indexOf("Chrome") > 0) {
var paramsChrome = 'height=' + height + ', width=' + width + ', top=' + (((window.screen.height - height) / 2) - 50) +
',left=' + ((window.screen.width - width) / 2) + ',toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no';
window.open(url, "newwindow", paramsChrome);
}
else {
var params = 'dialogWidth:' + width + 'px;dialogHeight:' + height + 'px;status:no;dialogLeft:'
+ ((window.screen.width - width) / 2) + 'px;dialogTop:' + (((window.screen.height - height) / 2) - 50) + 'px;';
tempReturnValue = window.showModalDialog(url, args, params);
}
return tempReturnValue;
}
</script> 

Wenn Sie schließlich klicken möchten, wird ein Dialogfeld angezeigt. Verwenden Sie einfach das Ereignis onclick, um die Methode aufzurufen

Das Obige stellt Ihnen die Analyse und Lösungen für das Problem inkompatibler Dialogfenster vor, die in der showModalDialog()-Methode von Google erscheinen. Ich hoffe, dass es für alle hilfreich ist.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn