描述: 用javascript打开一个窗口 window.open(url,"",""),如果url返回的结果是一个文件流,正好IE8又没装浏览文件的插件,IE8将会自动关闭打开的窗口,不提示用户是否需要下载文件,有时还会报一个错。
我觉得正常情况应该是: IE8 判断能否自己浏览,如果能就打开如(txt文件),如果不能就用对话框问用户是否需要下载(如zip)。(我对下载文件不熟悉,不知道ie什么时候会自动打开,什么时候会提示下载,有说错请指出)
重现方式: 我写了一个servlet,会读取server端的This_is_a_RTF_Doc_.rtf文件,并把文件流写入客户端,写入client的文件名设为downloadName.rtf, 返回MIME Type设为application/rtf. 在IE8中用window.open("http://localhost:8080/IE8Bug/FileAction","",""),就可以重现,firefox, ie6, Google Chrome 都可以work(I8不用window.open打开链接也可以正常下载)
servlet代码如下:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String rootPath = request.getSession().getServletContext().getRealPath("/") ;
String filename = "This_is_a_RTF_Doc_.rtf";
File f =new File(rootPath+filename);
response.setContentType("application/rtf");
response.setHeader("Content-Disposition",
"attachment;filename=\"downloadName.rtf\"");
InputStream in = new FileInputStream(f);
OutputStream out = response.getOutputStream();
for(int b = in.read(); b != -1; b=in.read()){
out.write(b);
}
in.close();
out.close();
}
我认为是bug,因为window.open() 我觉得是基本方法,而且ie6都支持,附件中有eclipse下载(js 不熟悉有说错前指出)
分享到:
相关推荐
### IE特有Bug知识点解析 #### 一、概述 Internet Explorer(简称IE)作为曾经市场上最主流的浏览器之一,在其发展过程中积累了一系列特有的兼容性问题。这些问题是由于IE浏览器自身的技术限制以及对某些Web标准的...
本文将深入探讨针对IE6的一个常见问题——透明效果的实现及其相关的修复策略。 首先,让我们理解什么是透明效果。在现代Web设计中,透明或半透明效果是创建美观、交互式用户界面的重要组成部分。它们可以通过CSS的`...
在CSS布局中,将一个元素水平居中是最基本的需求之一。通常,通过设置`margin: auto;`可以轻松实现这一点。然而,在IE6中,这一操作往往会导致布局错乱,元素不会正确居中。 **解决方案**:为了解决这个问题,可以...
"iebug总结jar包"是一个专门针对这些问题的资源集合,它包含了处理IE bug的相关资料,特别是针对IE6的解决方案。以下是基于这个主题的详细知识点: 1. **IE6的渲染引擎**:IE6使用的是Trident渲染引擎,它与现代...
ie6-ie7 dom渲染bug demo
然后,添加一个CSS类,比如`paused`,该类会阻止动画。当鼠标悬停时,添加这个类;离开时,移除它。 ```css .slideshow img { transition: opacity 1s; } .paused { animation-play-state: paused; } ``` ```...
IEbug、IE6页面问题、IE6样式问题
9. **最大高度问题**:IE6有一个已知的问题,当内容超过最大高度时,滚动条不会出现。可以通过设置一个固定高度并开启滚动条来解决,如`overflow:auto`。 10. **渐进增强和优雅降级策略**:对于IE6的支持,通常推荐...
压缩包内的文件`green_3.gif`和`bg.gif`可能是用于演示这个3像素Bug的示例图片,而`photo.html`可能是一个包含了问题代码的HTML页面,用于重现和解决这个问题。通过分析这些文件,我们可以更深入地理解问题并尝试...
在IE6中,如果一个浮动元素设置了margin属性,可能会导致实际的外边距比预期的要宽一倍。为了解决这个问题,可以将浮动元素的`display`属性设置为`inline`。 2. **最小高度的处理**: IE6不支持`min-height`属性...
解决方法与上一个问题类似,即为浮动元素添加`display: inline;`属性。 ```css #element { background: #95CFEF; width: 300px; height: 100px; float: left; margin: 30px 0 0 30px; border: solid 1px #36F...
在使用Extjs2.2.1版本开发Web应用时,可能会遇到一个特定的问题:`datefield`控件在Internet Explorer 8(简称IE8)浏览器中的显示存在问题,具体表现为控件内容无法完全展示出来。这个问题对于依赖于Extjs框架进行...
计师在输出时,最头痛的就是各大浏览器的兼容性了,特别是ie6,多用“可恶”“老不死”来形容!而我看来,其实不然,既然ie6还没“死”,...下面以一个列子来说明用float 解决ie6的兼容性。 一、要布局的导航,如图一
"一个IE死机bug"这个标题已经明确地表明了这个bug的严重性,IE死机bug是指IE浏览器在执行某些操作时,出现了无法恢复的死机状态,这对用户体验和浏览器安全造成了很大的影响。 描述分析 "整理发现的,无责任复制...
为了解决这个问题,"SumoSelect"应运而生,它是一个专门设计来兼容IE8的多选下拉框组件,同时保持了简单易用和体积小巧的特点。 SumoSelect是一款强大的JavaScript插件,由jQuery库支持,能够将传统的HTML select...
标题“AD-IEBUG”可能指的是一个针对Active Directory(AD)和Internet Explorer(IE)的错误或漏洞的调试工具或技术。在这个场景中,“AD”是微软Windows操作系统中的目录服务,用于存储和管理网络资源,而“IE”是...
修复前一个“自适应轮播图 ” ie9以下的bug 兼容IE6+ ie6下面要做一些CSShack 可以参考文章http://blog.csdn.net/qianqianyixiao1/article/details/42584361
这份“IE6, IE7, IE8 CSS 兼容速查表”就是为了解决这一问题而编写的,它提供了关于这些浏览器中CSS特性的详尽对比和解决方案。 1. **CSS盒模型差异**:IE6、7采用了独特的盒模型,其中`width`属性包含了边框和内...
总之,"IE6 PNG图片 BUG"是前端开发历史上的一个痛点,虽然现在IE6的使用率已经极低,但在支持更广泛的浏览器兼容性时,理解这个问题仍然很重要。随着技术的进步,如今的浏览器已经更好地支持PNG和其他高级特性,但...