IE浏览器中为什么window.opener.location.href 无效

bill_hjyh 2012-04-11 01:42:17
function Jump(sURL) {
sURL = "c.html";
if (navigator.userAgent.indexOf("MSIE") != -1) {
window.opener.location.href = sURL;
}
else {
window.opener.location.href = sURL;
}
}

以上js脚本 在chrome和火狐浏览器中可以执行,但在IE个版本中均无效,请问有什么可以替代语句吗?
...全文
2941 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
seannell 2014-07-31
  • 打赏
  • 举报
回复
尽管已经结贴,还是忍不住想说,你的代码是在modaldialog中的页面上运行的。如果需要使用父页面,就在openmodaldialog的时候把父窗口的window传给子页面。
jianhuili 2013-07-13
  • 打赏
  • 举报
回复
请问楼主这个问题解决了吗?
zhou1989yu11 2013-05-20
  • 打赏
  • 举报
回复
我也来问下 这个问题解决了吗 楼主。。
u010770415 2013-05-20
  • 打赏
  • 举报
回复
请问楼主这问题解决了么,求解啊!!!
装逼之王 2012-04-14
  • 打赏
  • 举报
回复
window.location.replace()
Rommel_Gao 2012-04-13
  • 打赏
  • 举报
回复
程序没问题,看看IE的设置吧。另外你提到了跨域访问,如果是同一个域里的地址会不会有问题?试一下,如果没有,就是安全设置的问题吧。
IE有很多很二的默认设置和其他浏览器不一样。
Rommel_Gao 2012-04-13
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 的回复:]

引用 20 楼 的回复:
程序没问题,看看IE的设置吧。另外你提到了跨域访问,如果是同一个域里的地址会不会有问题?试一下,如果没有,就是安全设置的问题吧。
IE有很多很二的默认设置和其他浏览器不一样。
确实跨域造成的,同一个域里是正常的。有什么办法能解决IE跨域 能使用window.opener.location.href = sURL;呢, chrome和火狐都是能够用的
[/Quote]

IE的跨域问题是个老生常谈的问题。可惜,自己也没仔细研究过,没有太多的发言权。。等等有研究的大神吧。
相关页面可以参考一下,或者Google一下“IE 跨域”都可以:
http://hi.baidu.com/%B3%A4%B7%E7%B6%CC%D3%EA/blog/item/5d32a91263eae70b213f2e9f.html

希望有帮助
bill_hjyh 2012-04-13
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 的回复:]

window.opener.location = url;
我是这样在当前页面去刷新父页面的、而且在IE中是没有问题的。
[/Quote] 跨域 就不行,比如说我百度搜索出我的站点,然后点击打开我的页面后, 这句话就不能使百度搜索页跳转了,提示没有权限错误
想念旧时光 2012-04-13
  • 打赏
  • 举报
回复
window.opener.location = url;
我是这样在当前页面去刷新父页面的、而且在IE中是没有问题的。
bill_hjyh 2012-04-13
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 的回复:]
程序没问题,看看IE的设置吧。另外你提到了跨域访问,如果是同一个域里的地址会不会有问题?试一下,如果没有,就是安全设置的问题吧。
IE有很多很二的默认设置和其他浏览器不一样。
[/Quote] 确实跨域造成的,同一个域里是正常的。有什么办法能解决IE跨域 能使用window.opener.location.href = sURL;呢, chrome和火狐都是能够用的
rainVSjava 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 的回复:]
引用 10 楼 的回复:

[Quote=引用楼主 的回复:]
function Jump(sURL) {
sURL = "c.html";
if (navigator.userAgent.indexOf("MSIE") != -1) {
window.opener.location.href = sURL;
}
else {
window.opener.location.h……
[/Quote]
房主不要纠结 了 程序没有问题 应该就是你的IE浏览器的问题 你的IE是不是装过插件什么的 建议你重新安装一下IE
我爱小土豆 2012-04-11
  • 打赏
  • 举报
回复
页面跳转的几种方式看看有没有你想要的
bill_hjyh 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 的回复:]

window.location.href=src试试这个
[/Quote] 不行 ,这个和window.open (sURL,"_self"); 一样效果了,不是在来源页面跳转
我爱小土豆 2012-04-11
  • 打赏
  • 举报
回复
window.location.href=src试试这个
bill_hjyh 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

[Quote=引用楼主 的回复:]
function Jump(sURL) {
sURL = "c.html";
if (navigator.userAgent.indexOf("MSIE") != -1) {
window.opener.location.href = sURL;
}
else {
window.opener.location.href = sURL;
}……
[/Quote] IE8执行window.opener.location.href 这脚本时 窗口左下角提示 这行 错误 ,错误提示为“没有权限”
bill_hjyh 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

[Quote=引用楼主 的回复:]
function Jump(sURL) {
sURL = "c.html";
if (navigator.userAgent.indexOf("MSIE") != -1) {
window.opener.location.href = sURL;
}
else {
window.opener.location.href = sURL;
}……
[/Quote] 我也是IE8的 安全改成默认也不行啊,360安全浏览器也试过了 也不行,只有火狐和chrome是行的
zhangdaowu5 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
window.open (sURL,"_self");
[/Quote]

++
bill_hjyh 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

window.open (sURL,"_self");
[/Quote]不好意思可能我没说清楚,我要做的是 比方我百度搜索, 搜索出的结果中 我点击打开了我的页面之后,然后让百度搜索的那个页面 也同时跳转到我的页面 所以以前 我才用window.opener

window.open (sURL,"_self");这个是把新打开的页面又重跳转了而非跳转来源网页的跳转
rainVSjava 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
function Jump(sURL) {
sURL = "c.html";
if (navigator.userAgent.indexOf("MSIE") != -1) {
window.opener.location.href = sURL;
}
else {
window.opener.location.href = sURL;
}
}

这样写是完全可以运行的 我用的是IE8 不知道你的是什么版本的 建议你将你的IE安全设置 设置成默认级别
加载更多回复(9)

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧