你的位置:首页 > Java教程

[Java教程]amCharts图表中的JavaScript中文注释引起的浏览器兼容性问题


近期用amCharts做图表.一切都很顺利,然后演示的时候掉链子了,平时开发的时候都是用的火狐和谷歌,加上这种图表框架本来就号称兼容性极好,也没有在ie上测试,演示的机器上恰巧用的是ie11,发现一个普通柱状图表的x轴的目录名显示为undefined.换用谷歌浏览器又一切正常.

显然出现兼容性问题了,但是这个很奇怪啊,用ie打开amCharts的官网的demo,发现显示是正常的,但是本机的程序却不正常,马上将官网的最新版本替换本机版本,再运行依然显示不正常.把官网上的例子整个替换下来,用ie打开显示却是正常的.这就怪了.然后开始逐行对比代码,正常的demo关键代码点为:

          "categoryField": "reqName",          "categoryAxis": {           "gridPosition": "start",           "gridAlpha": 0,           "tickPosition": "start",           "tickLength": 20,           "labelFunction":function(value, formattedValue, valueAxis){              return value.substring(0,5);            }          }

本地有问题的代码为:

          //x轴的分类          "categoryField": "reqName",          "categoryAxis": {           "gridPosition": "start",           "gridAlpha": 0,           "tickPosition": "start",           "tickLength": 20,           "labelFunction":function(value, formattedValue, valueAxis){              return value.substring(0,5);            }          }

除了多了那么一行中文注释没有任何区别,然后试着把有问题的代码的中文注释去掉,运行显示正常了,然后中文注释换成//x轴也是显示正常的.

这只能得出一个结论了:某些中文注释被浏览器解析的时候也可能产生一些问题.