test.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>对话框测试</title>
<script type="text/javascript">
var windowArray = new Array();
function destorySonWindow() {
if(!document.all) {
for(var i = 0; i < windowArray.length; i++) {
if(windowArray[i]) {
windowArray[i].close();
}
}
}
}
function showDialog(url, _left, _top, _width, _height, _modal, _resizable, _status, _scroll) {
var result;
var iTop = (window.screen.availHeight- 30 - _height) / 2;
var iLeft = (window.screen.availWidth- 10 - _width) / 2;
if(_left == -1 || _top == -1) {
_left = iLeft;
_top = iTop;
}
var ieFeatures = "dialogWidth=" + _width + "px;" +
"dialogHeight=" + _height + "px;" +
"dialogLeft=" + _left + "px;" +
"dialogTop=" + _top + "px;" +
"resizable=" + _resizable + ";" +
"status=" + _status + ";" +
"scroll=" + _scroll;
var otherFeatures = "width=" + _width + "," +
"height=" + _height + "," +
"left=" + _left + "," +
"top=" + _top + "," +
"resizable=" + _resizable + "," +
"status=" + _status + "," +
"scrollable=" + _scroll;
if(_modal == 'yes') {
window.openSonModel = true;
} else {
window.openSonModel = false;
}
if(document.all) { //ie
if(_modal == 'yes') {
result = window.showModalDialog(url, window, ieFeatures);
} else {
result = window.showModelessDialog(url, window, ieFeatures);
}
} else { //other
otherFeatures += ',modal=' + _modal;
result = window.open(url, '_blank', otherFeatures);
windowArray.push(result);
}
return result;
}
function test() {
showDialog('x.html', -1, -1, 200, 200, 'yes', 'yes', 'yes', 'yes');
}
</script>
</head>
<body onunload="destorySonWindow()">
<input type="text">
<input type="button" value="弹出对话框" onclick="test()" >
</body>
</html>
x.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>x</title>
<script type="text/javascript">
function reloadParent(url) {
if(!url || url == '') {
if(document.all) {
if(!window.dialogArguments.openSonModel) {
window.dialogArguments.location.reload();
}
} else {
window.opener.location.reload();
}
} else {
if(document.all) {
if(!window.dialogArguments.openSonModel) {
window.dialogArguments.location = url;
}
} else {
window.opener.location = url;
}
}
}
</script>
</head>
<body>
hello, world <br>
<input type="button" value="重载父页面" onclick="reloadParent()" >
</body>
</html>
在test.html页面调用showDialog函数可以打开模式和非模式对话框(在firefox上不管modal参数设置成yes或on好像都是非模式对话框,另外,在firefox上主页面,它不会关闭由这个页面打开的对话框,所以,此函数也能在主页面关闭时,关闭由这个页面打开的对话框)。在x.html页面,可以刷新主页面,可以提供刷新url,也可以不提供,另外在ie下的模式对话框是不支持刷新刷新主页面。
分享到:
相关推荐
在IE和Firefox这两个主流浏览器上实现父子模态对话框之间的值传递,需要对JavaScript有深入的理解,并且考虑到跨浏览器兼容性。以下将详细解释这一技术点。 首先,让我们理解什么是父子模态对话框。父对话框通常是...
本文将深入探讨如何实现在Internet Explorer(IE)与Mozilla Firefox(火狐)浏览器中兼容的“收藏本页”功能,即用户可以轻松地将当前浏览的页面添加到收藏夹或书签中。 #### 一、IE浏览器中的收藏功能实现 在IE...
4. **兼容性问题**:由于`onbeforeunload`和`onunload`是IE特有的,它们在其他浏览器(如Chrome、Firefox、Safari等)中的行为可能会有所不同。因此,在实际开发中,为了确保跨浏览器兼容性,你需要使用`window....
在IT领域,弹出模态窗口是一种常见的用户界面设计元素,它用于暂停用户与主页面的交互,直到用户处理完弹出窗口中的内容。模态窗口通常被用于显示警告、确认对话框或需要用户输入信息的情况。在这个实例中,我们讨论...
5. **浏览器兼容性**:由于目标是实现跨浏览器兼容,开发者可能使用了jQuery的跨浏览器API和特性检测,以确保在不同的浏览器环境下都能正常工作,例如IE、Firefox、Chrome、Safari和Edge等。 6. **用户体验**:良好...
同时,为了达到“兼容主流浏览器”的目标,开发者可能采用了特征检测(feature detection)和渐进增强(progressive enhancement)等策略,确保在Firefox、Chrome、Safari、Edge和Internet Explorer等浏览器中都能...
在某些版本的Firefox中,这个返回的字符串不会直接显示给用户,而是被一个预设的通用提示取代,这导致了用户体验的一致性问题。 Mozilla官方文档指出,在Firefox 4之前的版本,可以通过修改事件对象的`returnValue`...
此外,压缩包中的文件"JavaScript 不提示关闭窗口代码ie6-ie7-火狐通用_Web开发_网站设计_烈火网_关注站长,建设互联网!.mht"很可能包含了一个具体的示例,演示了如何编写一个适用于IE6-IE7以及火狐的兼容性代码。...
不过,在不同的浏览器环境下(如IE6、IE7与Firefox),代码的表现并不一致。 #### 二、代码解读 首先来看一下给定的部分代码内容: ```html 支付中心-填写资料 ; charset=gb2312"> #testa, #testa2 { width: ...
虽然DHTML是一个通用概念,但不同浏览器对它的实现可能有所不同,尤其是在早期,IE与Firefox等浏览器对DOM的支持程度不一。因此,编写DHTML代码时需要注意跨浏览器的兼容性问题。 9. **AJAX(Asynchronous ...
5. 这时会弹出“安全设置”对话框,其中列出了许多可配置的浏览器行为。向下滚动找到“脚本”部分,检查“活动脚本”或“JavaScript”设置,这些脚本可能被用来禁用复制和粘贴功能。如果它们被设为“禁用”,则可以...
- 在弹出的对话框中,切换到“键入时自动套用格式”选项卡。 - 检查“Internet及网络路径替换为超级链接”复选框的状态,如果已经被勾选,则需要取消勾选,反之亦然。 - 完成后,保存设置并关闭对话框。 #### 第二...
- `showModelessDialog()`: 弹出一个非模态对话框,用户可以在对话框和原窗口之间自由切换,更适用于辅助或信息展示。 2. **`window.dialogArguments` 的使用** - 当使用 `showModalDialog()` 或 `...
[关于兼容性] 建议使用chrome firefox ie9+ 体验更完整。ie8以下基本上不做兼容处理。chrome支持文件夹拖拽上传。 [文件打开] office文件在线预览功能,服务器必须在公网(外部能访问该服务器) [忘记密码] 修改data...
在XML和DTD文件中,第一个定义的都是根元素。 3.Parent Element(父元素)/Child Element(子元素) 父元素是指包含有其它元素的元素,被包含的元素称为它的子元素。看上面的"结构树",其中是父元素,,是它的子元素,...
例如,在IE8中,你会看到完整的提示信息,而在Chrome中,只能显示系统默认的一部分,而Firefox(野狐禅)可能无法显示自定义的提示信息。 对于那些使用jQuery库的开发者,可以使用jQuery的`bind`方法来绑定`...
除在保密期内的保密论文和在技术保护期限内的论文外,允许论文被查阅和借阅,可以公布(包括以电子信息形式刊登)论文的全部内容或中、英文摘要等部分内容。论文的公布(包括以电子信息形式刊登)授权东南大学研究生...