internet explorer 8-在Chrome框架的IE中,点击文件附件链接后,Javascript被阻止
internet explorer 8 - In IE with Chrome Frame, after clicking link for file attachment, Javascript blocked
这是一个奇怪的问题。把它扔出去看看有没有人有什么想法。
只有在安装Chrome Frame时,IE才会出现此问题。似乎影响所有版本的IE。
当用户下载文件时,应用程序将停止响应(文件已成功下载)。链接仍然有效,但所有JS似乎都被阻止了。如果用户重新加载浏览器,应用程序运行良好,重新下载(即使是同一个文件)也不再导致应用程序挂起。
这里有一个示例链接(完全是香草):
<a id="m2658941440_a0_1316118824779" href="getAttachment.do?messageId=2658941440&attachmentId=0&preventCache=1316118825309" class="attachment" _dijitmenudijit_menu_7="1">attachment_prob.txt (277 bytes)</a>
以下是Fiddler报告的请求和响应。
请求:
GET https://www.foo.net/getAttachment.do?messageId=2658941440&attachmentId=0&preventCache=1316122999730 HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Referer: https://www.foo.net/main.do
Accept-Language: en-US
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; chromeframe/13.0.782.220)
Accept-Encoding: gzip, deflate
Host: www.foo.net
Connection: Keep-Alive
Cookie: __utma=185983734.639214142.1315756824.1316118759.1316121566.5; __utmb=185983734.2.10.1316121566; __utmz=185983734.1315756824.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmc=185983734; fooDomain=foo.net; isYtBlocked=true; TIME$STATE=10ba57c6bdb0075922b4c9ad4ef9940baf6bde26c79f3c6bcfe700413fe1710e; xgh=gnweb10; JSESSIONID=8487D0FE3D31EE81D2DE4E0BD19B7104; BIGipCookie=000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000; cdnPath="https://cdn.foo.net"; SESSION$STATE=10ba57c6bdb0075922b4c9ad4ef9940baf6bde26c79f3c6bcfe700413fe1710e; JID=mtyson; XMPPTOKEN=4662e808-1492-45ff-9aa7-ca39969574ea; contest-data=null; Foo.web3.foo.net.-csdvew.86158rid=5648145; PHPSESSID=cfepc8dnvmj94tbrqb8nbb03r0; Foo.web3.foo.net.-csdvew.86158sid=7ff697be-0d55-40c7-bb4a-f896443b22c3
响应:
HTTP/1.1 200 OK
Date: Thu, 15 Sep 2011 21:43:32 GMT
Server: Apache/2.2.10 (Fedora)
Content-Disposition: attachment; filename="attachment_prob.txt"
Cache-Control: max-age=2
Expires: Thu, 15 Sep 2011 21:43:34 GMT
Set-Cookie: xgh=gnweb10; path=/;
Set-Cookie: BIGipCookie=000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Vary: User-Agent,Accept-Encoding
P3P: policyref=http://www.foo.net/w3c/p3p.xml, CP=ALL
Connection: close
Content-Type: text/plain; name=attachment_prob.txt;charset=us-ascii
Content-Length: 277
https://www.foo.net/messages.do?op=messageDetail&userId=12735728&messageId=2620253518&owner=true
select groupid, shardid from users where userid=12735728;
+---------+---------+
| groupid | shardid |
+---------+---------+
| 57826 | 2 |
+---------+---------+
更新1事实证明,任何返回下载的东西都会导致问题。甚至:
<a id="m2658941440_a0_1316118824779" href="http://download.mozilla.org/?product=firefox-6.0.2&os=win&lang=en-US" class="attachment" _dijitmenudijit_menu_7="1">attachment_prob.txt (277 bytes)</a>
产生问题。
但是
<a id="m2658941440_a0_1316118824779" href="http://www.google.com" class="attachment" _dijitmenudijit_menu_7="1">attachment_prob.txt (277 bytes)</a>
没有。
更新2根据gilly3的评论,如果目标设置为_blank,文件将在新的选项卡中下载ok,而不会破坏主页上的JS。
我尝试将目标指向主页中的iframe,但在这种情况下确实存在问题。
我通过编程创建了一个Iframe,并将的url设置为文件下载,而不是使用当前窗口。这就解决了这个问题。
我注意到它被破坏的方式,它使用的是IE下载程序(尽管它是chromeflame)。当我使用iframe时,它使用chrome下载程序。
相关文章:
- 在单击href链接的同时下载文件
- node.js的webtorrent通过magnet链接收集所有文件
- 链接/按钮从子文件夹下载文件--浏览器只是浏览
- markrwithlabel.js(第三方)原始文件链接断开
- 外部链接的Javascript文件赢得't执行,但函数有效
- 如何使用javascript从文件夹中获取图像并发布直接链接
- Web 地址虚拟目录会断开外部 JavaScript 链接,因此找不到文件
- 指定单击链接时要加载的xml文件
- 打开'选择文件'窗口单击锚链接(跳过单击'选择文件'按钮)
- 从HTML链接时,Javascript文件不起作用
- javascript外部链接文件的可接受数量是多少
- 重新加载链接文件 HTML
- 使用 src 在 PHP 中链接文件(图像,js)
- PHP jquery ajax取消链接文件夹中的图像不起作用
- Qt Deployment C++将链接文件设置为可执行目录
- 如何有效地等待链接文件在继续运行脚本之前完成运行
- 在JQuery中使用空格链接文件
- 我如何使网页检查,看看是否链接文件有错误的文件类型检查另一个文件类型
- HTML按钮:如何链接文件夹外的文件
- XAMPP, Mac OS X和链接文件