我需要在网页上正常使用Highcharts的更新版本并使用Yii 1.1和Highcharts版本2.1.9框架。
此页面还可以访问数据库并调用Highcharts来绘制图表。
浏览页面的源代码,我发现找到了Highchars目录和文件在以下路线上:
Highcharts文件夹 .................... 网页文件夹
------------------------- ................... 。----------------------------------------------- -
./ examples / .....................................不可用
./ exporting-server / .................. myWebPage / protected / views / aplicaciones / exporting-server /
./ graphics / ...............................不可用
./ index.html ......................................不可用
./ js / highcharts.js .............................. myWebPage / protected / views / aplicaciones / js / highcharts.js
./ js / highcharts.src.js ................ myWebPage / protected / views / aplicaciones / js / highcharts.src.js
./ js / adapters / ...................................不可用
./ js / modules / .......................... myWebPage / protected / views / aplicaciones / js / modules /
./ js / themes / ..................................... myWebPage / protected / views / aplicaciones / js / themes /
我需要使用更高版本的Highcharts(4.0.4版或更高版本)。
为了进行简单的首次测试,我替换了网上的文件和上表中指示的目录,它们对应于Highcharts 2.1.9Highcharts 2.2.0(变化很小),当我在浏览器中再次打开网络时错误出现:
TypeError:c.renderer.symbol(...)未定义
highcharts.js:166:478
drawPoints http://localhost/myWebPage/protected/views/aplicaciones/js/highcharts.js:166
render http://localhost/myWebPage/protected/views/aplicaciones/js/highcharts.js:176
redraw http://localhost/myWebPage/protected/views/aplicaciones/js/highcharts.js:177
h http://localhost/myWebPage/protected/views/aplicaciones/js/highcharts.js:55
o http://localhost/myWebPage/protected/views/aplicaciones/js/highcharts.js:84
h http://localhost/myWebPage/protected/views/aplicaciones/js/highcharts.js:55
success http://localhost/myWebPage/protected/views/aplicaciones/aplicacionesjs/ShowChart.js:195
jQuery 4
n
fireWith
w
d
ShowChart.js代码是这样:
14可变图;
52图表=新的Highcharts.Chart({
53图表:{
54 renderTo:'container',
55 defaultSeriesType:'scatter',
56个事件:{
57负载:requestData
58},
. . .
147 for(i = 0; i
148 {。 。 。
193 chart.addSeries(json [i],false);
194}
195 chart.redraw();
似乎问题与jQuery有关。
如果我也尝试更新jQuery版本,情况会变得更糟,因为在Yii 1.1框架中出现了新的错误。
因此,我认为解决方案(过于复杂)可能是将Yii的版本从1.1迁移到2.0,而我已经在其中使用了更现代的Highcharts版本。
我不想将整个页面从Yii 1.1迁移到Yii 2.0,因为我只需要更新HighCharts的版本,并且从Yii 1.1到Yii 2.0的迁移并不容易,因为它需要修改页面代码。
我开始使用Yii和Highcharts进行Web开发,但是我已经阅读了Yii 1.1手册,并且得出结论,应该将Highcharts作为扩展安装,并将其目录和文件复制到myWebPage / protected / extensions目录中
是否有可能在维持Yii 1.1功能的同时将Highcharts的版本升级到更现代的版本?
我应该用Highcharts覆盖网络上已经存在的文件夹(我已经尝试过了,但是它不起作用),或者删除它们并将Highcharts的新版本复制到文件夹myWebPage / protected / extensions中?
还有其他更好的解决方案吗?
我正在寻找更简单的解决方案。
谢谢,我继续对Highcharts进行研究,并做了一些测试,因为Highcharts是一个javascript框架,现在我认为不必更新Yii来更新网页上的Highcharts。我在下面总结了我的新测试:
Web服务器在没有互联网连接的网络上,并且其他计算机从本地网络访问网站。
因此,我在myWebPage / Highcharts-4.0.4中解压缩了Highcharts-4.0.4.zip文件
Web由几个php和javascript文件组成,因此在每个php中都出现了对其操作必需的js的引用。
我还在每个php中添加了对Highcharts的引用,以指示其位置。
例如,文件showChart.php看起来像:
[在浏览器中打开网页时,Firebug控制台显示的错误与以前相比大致相同:
TypeError: c.renderer.symbol(...) is undefinedhighcharts.js:237:31
drawPoints http://localhost/myWebPage//Highcharts-4.0.4/js/highcharts.js:237
render http://localhost/myWebPage//Highcharts-4.0.4/js/highcharts.js:246
redraw http://localhost/myWebPage//Highcharts-4.0.4/js/highcharts.js:247
redraw http://localhost/myWebPage//Highcharts-4.0.4/js/highcharts.js:193
forEach self-hosted:266
each http://localhost/myWebPage//Highcharts-4.0.4/js/highcharts.js:22
redraw http://localhost/myWebPage//Highcharts-4.0.4/js/highcharts.js:193
success http://localhost/myWebPage//protected/views/app/appjs/showChart.js:195
jQuery 4
n
fireWith
w
d
showChart.js:195的内容是:
chart.redraw();
如果我不使用Highcharts 4.0.4的任何新功能,为什么会发生这些错误?
[对我来说,问题出在所使用的jQuery版本,该版本与Highcharts 4.0.4不兼容。可以吗?
此网页使用的是jquery-1.7.1.min.js,但我认为Highcharts-4.0.4使用的是jQuery 1.9,1和1.11.0,因为它们都出现在jQuery文件夹中:
./Highcharts-4.0.4/exporting-server/phantomjs/jquery.1.9.1.min.js
./Highcharts-4.0.4/exporting-server/java/highcharts-export/highcharts-export-convert/target/classes/phantomjs/jquery.1.9.1.min.js
./Highcharts-4.0.4/exporting-server/java/highcharts-export/highcharts-export-convert/src/main/resources/phantomjs/jquery.1.9.1.min.js
./Highcharts-4.0.4/exporting-server/java/highcharts-export/highcharts-export-web/target/highcharts-export-web/resources/lib/jquery-1.11.0.min.js
./Highcharts-4.0.4/exporting-server/java/highcharts-export/highcharts-export-web/src/main/webapp/resources/lib/jquery-1.11.0.min.js
应该使用什么jQuery版本?