【发布时间】:2015-04-09 01:30:45
【问题描述】:
我当前的 iFrame 页面加载了 index.html#/myPage,它在 Chrome 或 Safari 下运行良好,但不适用于 IE 11
我在 SO 上找到了this solution: 在 # (index.html/#/myPage) 之前添加 / 即可解决您的问题
它看起来很简单,但在我的例子中,它会产生一个 404 Page not found
好像我的路由提供者不支持#前面的/,为什么?
路由代码:
appSkeleton.config(
function ($routeProvider) {
$routeProvider.
when('/', {
template: '<skeleton-manage></skeleton-manage>'
})
.when('/skeletonManage', {
template: '<skeleton-display-and-manage></skeleton-display-and-manage>'
})
.when('/employeeManage/:employeeId/:displayMode/:idItemClick?', {
template: '<employee-display-and-manage></employee-display-and-manage>'
})
.otherwise({
redirectTo:'/'
});
}
);
应用程序在 Node.JS 服务器上运行
【问题讨论】:
-
因为您使用的任何网络服务器都将
/index.html/视为不是与/index.html相同的资源。这是正常。您可以使用某种别名或 URL 重写在 Web 服务器级别更改此行为。取决于为该资源提供服务的内容。 -
你能告诉我们你的路由代码吗?以及哪个版本的 IE?
标签: javascript html angularjs iframe angular-ui-router