Chrome / Chromium浏览器内置的XSLT处理是否依赖于启用JavaScript?
我有一个Web应用程序,它始终使用XSLT将XML转换为客户端转换。它还大量使用客户端JavaScript。我添加了一些标记和JavaScript,如果JavaScript没有运行,会向用户显示一个警告,即应用程序在打开它之前无法正常运行。
这适用于IE和Firefox,但是当我"不允许" Chrome浏览器中的JavaScript,页面根本无法呈现。
答案 0 :(得分:1)
我在Windows 7上使用Google Chrome版本23.0.1271.95 m测试了测试文档http://home.arcor.de/martin.honnen/xslt/test2012120701.xml(具有xml-stylesheet
处理指令的XML文档,以应用XSLT样式表test2012120701.xsl,该脚本使用脚本创建HTML结果文档element)和http://home.arcor.de/martin.honnen/xslt/test2012120702.xml(具有xml-stylesheet
处理指令的XML文档,用于应用XSLT样式表test2012120702.xsl,无需任何脚本即可创建HTML结果文档),对于这两个文档,当在Chrome中禁用Javascript时,没有任何内容渲染。使用带有F12的开发人员工具只显示文档树中的xml-stylesheet
处理指令节点。
因此,基于该测试,确实在Chrome中禁用Javascript会阻止通过xml-stylesheet
处理指令进行XSLT处理。当我在Chrome中再次启用Javascript并重新加载文档时,在这两种情况下都会应用XSLT。
Chrome的行为是故意还是我不知道的错误,但我可以确认问题。
答案 1 :(得分:0)
不,不是
问题在于您调用XSLT转换的方式
如果使用Processing-Instruction
执行此操作拿这个不使用Javascript的样本(或多或少有效)
http://innovimax.fr/open-data.xsl
我说“或多或少”因为该示例是在Twitter拥有XML API时完成的。它现在只是JSON。