问题描述
在使用框架/框架集的ASP中更新旧站点。我们只能使用IE或Edge来使用此站点,这很好,但是我们必须将仿真/兼容模式设置为IE 5。
我遇到的问题:
parent.window.frames("framename").navigate(url);
使用除IE5模式以外的任何东西时,都会在IE调试器中引发错误:
Function expected
是否有一种完成同一件事的新方法?有人建议使用:
parent.window.frames("framename").location.href(url);
但是没有用。有什么想法吗?
解决方法
有时候我比人群回答我自己的问题要快:)
这适用于IE 9 +
parent.window.frames["framename"].navigate(url);
但是为了共存,以便我的IE 5模拟用户仍然可以使用我必须将其包装在某种情况下的站点:
if (Function('/*@cc_on return document.documentMode>8@*/')()) {
parent.window.frames["framename"].navigate(url);
} else {
parent.window.frames("framename").navigate(url);
}
这将检查浏览器/仿真级别并使用适当的语法。这对我有用。