我有一个下面的脚本。
$('.t1 span.droppable').each(function(){
//alert("DROP");
//$(this).droppable();
$('.droppable').droppable({
drop: function(event, ui) {
var fromd = 0;
var tod = 0;
var url1 = "insertsw.php?fromd=" + fromd + "&tod=" + tod;
var r = "";
objArgs = new Array(tpFrom, sFrom, nsdFrom, tpTo,sTo, dTo);
r=showModalDialog(url1,objArgs,"dialogWidth: 450; dialogHeight: 300; resizable: yes");
if(r==null)
{
popUpOpen=1;
}
else
{
popUpOpen=1;
//alert("R : "+r);
var n=r.split("#");
}
}
}
}它在chrome上已经工作了近3年,但突然间它显示为未定义。但在火狐上运行得很好,和往常一样。为了适应它,chrome做了哪些改变?
发布于 2014-09-17 00:48:05
这就是你的问题:http://windowsitpro.com/blog/google-kills-showmodaldialog-api-chrome-37-and-does-evil-exchange-owa
以下是一些解决方法:Why is window.showModalDialog deprecated? What to use instead?
编辑:
看看这个包:showModalDialog
要让这个包与您的包一起工作,您不需要做太多更改。它实际上是相同的语法。
例如,您可以执行以下操作:
window.showModalDialog("demo-modal.html", "some arguments", "dialogWidth:500px;dialogHeight:200px");这实际上和你现在拥有的是一样的。看看是否只包含包就能修复它。我相信这是应该的。似乎根本没有不同的语法,这应该可以在chrome中工作
发布于 2015-01-09 20:01:30
您可以使用:
if(no_support_dialog()){
showModalDialog(url1,objArgs,"dialogWidth: 450; dialogHeight: 300; resizable: yes");
}else{
alert('This browser does not support the native method \'showModalDialog\'');
}
function no_support_dialog() {
return (/\{\s*\[native code\]\s*\}/).test('' + window.showModalDialog);
}https://stackoverflow.com/questions/25874215
复制相似问题