不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
window.open新建空白窗口动态写入xml示例
编辑:dnawo 日期:2012-02-15
window.open新建空白窗口动态写入xml:
这段代码能在新窗口中写入xml字符,但IE9、Firefox10、Chorme17都将它当成普通的html文档来解析,不能对xml节点进行展开与收缩。
我想问题的关键是脚本没有告诉浏览器文档类型为text/xml,让浏览器误以为是普通的text/html文档,那怎么告诉浏览器文档类型呢?想起了document.open有个mimetype参数,修改后代码如下:
问题依旧,什么原因呢?翻看《JavaScript权威指南》第四版,在P636中对mimetype参数说明如下:
引用内容
看来document.open(mimetype)也行不通,最终折衷解决方法:
测试结果:IE9无法显示、Chorme17中文会乱码、Firefox10显示正常。

参考文章
[1].Writing an E4X XML primitive to a new window shows as text/html
[2].How to write an E4X XML primitive to a new text/xml window in Mozilla?
[3].write xml to a new window
复制内容到剪贴板
程序代码

var win = window.open("");
win.document.write("<xml><item><name>木子屋</name><url>http://www.mzwu.com/</url></item></xml>");
win.document.close();
win.document.write("<xml><item><name>木子屋</name><url>http://www.mzwu.com/</url></item></xml>");
win.document.close();
这段代码能在新窗口中写入xml字符,但IE9、Firefox10、Chorme17都将它当成普通的html文档来解析,不能对xml节点进行展开与收缩。
我想问题的关键是脚本没有告诉浏览器文档类型为text/xml,让浏览器误以为是普通的text/html文档,那怎么告诉浏览器文档类型呢?想起了document.open有个mimetype参数,修改后代码如下:
复制内容到剪贴板
程序代码

var win = window.open("");
var doc=win.document.open("text/xml");
doc.write("<xml><item><name>木子屋</name><url>http://www.mzwu.com/</url></item></xml>");
doc.close();
var doc=win.document.open("text/xml");
doc.write("<xml><item><name>木子屋</name><url>http://www.mzwu.com/</url></item></xml>");
doc.close();
问题依旧,什么原因呢?翻看《JavaScript权威指南》第四版,在P636中对mimetype参数说明如下:

一个可选的字符串参数,指定了要写入document并显示出来的数据的类型。该参数的值应该是浏览器可以识别的标准MIME类型之一(在Netscape中即"text/html"、"text/plain、"text/gif""image/jped"和"image/x-bitmap"),或者是安装到浏览器上的某种插件可以处理的MIME类型。如果省略了这个参数,它的默认值是"text/html"。IE3将忽略这个参数,它总是假定文档的类型是"text/html"。W3C DOM标准中的Document.open()方法不支持该参数。
看来document.open(mimetype)也行不通,最终折衷解决方法:
复制内容到剪贴板
程序代码

window.open("data:text/xml,"+encodeURIComponent("<xml><item><name>木子屋</name><url>http://www.mzwu.com/</url></item></xml>"));
测试结果:IE9无法显示、Chorme17中文会乱码、Firefox10显示正常。

参考文章
[1].Writing an E4X XML primitive to a new window shows as text/html
[2].How to write an E4X XML primitive to a new text/xml window in Mozilla?
[3].write xml to a new window






评论: 0 | 引用: 0 | 查看次数: 5850
发表评论
请登录后再发表评论!