我使用的是带有“PURE JAVASCRIPT”的Fusion Chart,但带有我们希望在客户端的导出功能。FusionChart在客户端提供了SVG或VML的图表。我们要合并这个VML或SVG到XML文件以及XSLT样式表。到现在为止,我们想要将导出到XML功能导入到我们的应用程序中。基于浏览器的包含SVG和VML的XML
现在问题是SVG只能被Mozilla,Chrome浏览器和IE浏览器给出VML。所以客户端将获得包含SVG和VML的公共文件,但问题是XSLT中没有检测浏览器类型和版本的意思。我使用了IE条件注释,但它在chrome,mozilla中无效并且不起作用在ie.Even用JavaScript doesnot工作,我会想在JavaScript变量值的XSLT变量,这将不可行,因为XML先呈现之前的JavaScript,所以我不能有共同的XML + XSLT代码为所有browser.as我们希望将独立的XML提供给包含数据+图像的客户端。
任何有关这方面的帮助将不胜感激。 chart.getSVGString()
-
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="#stylesheet"?>
<!DOCTYPE doc [
<!ATTLIST xsl:stylesheet id ID #REQUIRED>]>
<doc>
<xsl:stylesheet id="stylesheet" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="xsl:stylesheet" />
<xsl:template match="/doc">
<html>
<head>
<style>
body{
font-family: Arial, Verdana,Helvetica, sans-serif;
}
table{
font-size: 11px;
}
th{
background-color:#D1D2D4;
}
</style>
</head>
<body>
<br />
<!-- detect browser here for getting SVG or VML if Mozilla,chrome then SVG->
<svg xmlns="http://www.w3.org/2000/svg"........> </svg>
<!-- If IE <=8 then VML -->
<br/>
<table border="2" cellspacing="1" width="86%">
<tr>
<th>Category</th>
<th>Hits</th>
<th>Bytes</th>
</tr>
<tr>
<td>IPAddress</td>
<td>1818</td>
<td>747.32 MB</td>
</tr>
<tr>
<td>None</td>
<td>1523</td>
<td>27.82 MB</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
</doc>
感谢, 阿莎Koshti
也许提供XML和SVG和VML都支持,将呈现。没有任何标准浏览器支持标准模式! – 2013-05-02 21:00:47
ShamasisBhattacharya ..我不想要这两个,但想要的东西,我可以检查浏览器类型,因此可以呈现其中之一。 – 2013-05-03 04:44:45