近来的项目中发现一个问题
用 window.open 方式打开的窗口在IE下并没有真正执行URL,需要在新打开的窗口中刷新一下才有效,而其它浏览器却没有问题
就是每次用IE打开的就是“找不到服务器,无法打开网页”,跟踪代码没有进去对应的 action
而刷新一下才进去对应的 action
google 百度都搜遍了居然也找不到有人报过这样的问题
好不容易在国外网站上发现描述一样的问题
http://bytes.com/topic/javascript/answers/756080-window-open-works-firefox-but-not-ie6-7-a
可是老外们也没有给出解决方法
难道真的没辙了??
偶然发现 URL 中包含有中文(非编码后)
于是将 URL encode 一下,靠,居然没事了!!!
原来是编码作怪啊
后来经过测试发现不只是 window.open
其它方式包括 <a> showModelDialog =URL中存在中文这问题都存在
以后为保险起见,在IE下都将URL先 encodeURI(URL)
function encode(URL){
if(navigator.appName==="Microsoft Internet Explorer"){
URL = encodeURI(URL);
}
return URL;
}
分享到:
相关推荐
当要使用window.open()去打开多个子窗口的时候,在ie7之后,都要使用不同的name,这样才能够打开出多个不同的窗口,如果name相同的话,就只能打开第一个子窗口。同事要是子窗口和父窗口有数据交换或是方法相互调用时...
在JavaScript中,`window.open()` 是一个非常有用的函数,它用于在浏览器中打开新的窗口或者标签页。这个函数有四个参数,每个都有特定的作用和注意事项。让我们深入了解一下这些参数: 1. **URL(可选)**:这个...
为了解决这个问题,一种可行的解决方案是在 `window.opener = null; window.close();` 之间插入 `window.open('', '_self')`。这行代码的作用是打开一个空页面并加载到当前窗口(`_self` 指示当前窗口自身)。这样做...
在JavaScript中,`window.location.reload()` 是用于刷新当前页面的一个函数。然而,当你在提交数据后立即使用这个函数,浏览器可能会弹出一个对话框询问用户是否要离开当前页面,因为数据可能还没有成功提交。这是...
具体方法包括window.location.reload(),该方法用于刷新当前页面,如果在使用window.open()弹出的新窗口中,可以通过window.opener.location.reload()来刷新父窗口;而通过window.showModalDialog()打开的模态窗口,...
- `window.opener.location.reload()`:如果弹出窗口是通过`window.open()`创建的,那么可以使用`window.opener`属性来访问并刷新父窗口。 - `window.dialogArguments.location.reload();`:对于通过`window....
### JavaScript页面刷新与弹出窗口问题的解决方法 在日常的Web开发中,经常会遇到页面刷新及弹出...通过上述方法,我们可以有效地解决JavaScript页面刷新与弹出窗口的问题,提高用户体验的同时确保功能的正常运作。
例如,`window.parent.location.href=window.parent.location.href`或`window.parent.location.reload()`可以刷新父窗口。 除了上述基本操作,还有其他一些高级交互方式: 1. **子窗口关闭父窗口**: 子窗口可以...
6. 刷新:通过`window.location.reload()`刷新当前加载的网页。 7. 导入/导出收藏:利用`window.external`对象的方法,可以实现收藏夹的导入和导出。 8. 加入收藏:`window.external.AddFavorite()`方法用于将当前...
1. `window.showModalDialog`方法:这是在早期IE浏览器中用于弹出模态对话框的一个方法。该方法会创建一个新的模态窗口,显示指定的HTML内容,并且这个对话框是阻塞式的,即在关闭前用户不能与父窗口进行交互。 2. ...
1. 首先,定义了一个名为`openmain()`的JavaScript函数,它使用`window.open()`方法来打开一个新窗口。这个方法接受三个参数:要加载的URL(在这里是"index1.htm")、窗口名称("mainwindow")以及一系列窗口特性,...
在网页设计和开发中,关闭浏览器窗口是一个常见需求,但某些情况下,如果需要关闭的窗口是通过脚本打开的新窗口,而页面上没有明显的关闭按钮,那么浏览器可能会弹出提示,询问用户是否确定要关闭窗口,这有时会干扰...
- `window.open('url', 'name', 'width=200,height=200')`:此方法用于打开一个新的浏览器窗口,`url`是要加载的页面,`name`是窗口的名称,`width`和`height`定义了窗口的大小。还可以添加其他参数如`menubar=no`...
本文介绍的JavaScript弹出窗口方法包括无提示刷新网页、刷新页面的方法以及使用window.open()和window.showModalDialog()弹出窗口的方法。以下是对这些知识点的详细说明。 1. 无提示刷新网页:这部分内容说明了当...
- 内部尺寸 (文档内容区域):由于 IE 不支持 `window.innerWidth` 和 `window.innerHeight`,因此可以通过 `document.body.clientWidth` 和 `document.body.clientHeight` 来获取。 - 外部尺寸 (包括工具栏、状态...
3. **发送请求**:通过 `open` 和 `send` 方法发送请求。 4. **设置定时器**:使用 `setTimeout` 函数实现每60秒自动刷新一次。 5. **处理响应**:在 `init` 函数中处理服务器返回的数据,并更新页面的 `sysTimeShow...
} else if (window.ActiveXObject) { // IE try { XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } } ...
19.窗口:打开窗口window.open(), 关闭一个窗口:window.close(), 窗口本身:self "fullscreen=no,channelmode=no,toolbar=no,location=no,menubar=no,scrollbas=no,resizable=no," 20.状態栏的设置:window.status=...