Javascript 与Prototype、jQuery和Highcharts的冲突问题

Javascript 与Prototype、jQuery和Highcharts的冲突问题,javascript,php,jquery,prototypejs,Javascript,Php,Jquery,Prototypejs,我正在从事一个PHP项目,该项目最初使用prototype和jQuery完成所有javascript/ajax魔术,但使用flash绘制图表 在我研究它的时候,项目使用了以下版本 PHP 5.5.9 原型-1.5.0 jQuery-1.11.0 (我知道旧版本) 但是他们两个(js LIB)彼此合作没有问题 因此,我的任务是升级版本和改进图表,当然,第一个调用端口是Highcharts/Highstocks。我安装了highcharts的3.0.7版 因此,首先我将项目升级到PHP7.2.2

我正在从事一个PHP项目,该项目最初使用prototype和jQuery完成所有javascript/ajax魔术,但使用flash绘制图表

在我研究它的时候,项目使用了以下版本

  • PHP 5.5.9
  • 原型-1.5.0
  • jQuery-1.11.0
(我知道旧版本)

但是他们两个(js LIB)彼此合作没有问题

因此,我的任务是升级版本和改进图表,当然,第一个调用端口是Highcharts/Highstocks。我安装了highcharts的3.0.7版

因此,首先我将项目升级到PHP7.2.24。我使用的jquery版本1.11.0似乎可以很好地处理highcharts,但不能处理prototype。所以我需要升级我使用的原型的版本

我发现这个版本是在原型版本1.6.1中修复的

太棒了!所以我现在有了一个使用jQuery1.11.0和prototype 1.6.1的工作应用程序,但是

只要我在原型中使用任何东西,例如

new Draggable()
我在chrome控制台中遇到以下错误

prototype.js:709 Uncaught RangeError: Maximum call stack size exceeded
    at Element.setOpacity (effects.js:69)
    at HTMLDivElement._methodized [as setOpacity] (prototype.js:338)
    at Function.setStyle (prototype.js:2214)
    at Element.setOpacity (effects.js:69)
    at HTMLDivElement._methodized [as setOpacity] (prototype.js:338)
    at Function.setStyle (prototype.js:2214)
    at Element.setOpacity (effects.js:69)
    at HTMLDivElement._methodized [as setOpacity] (prototype.js:338)
    at Function.setStyle (prototype.js:2214)
    at Element.setOpacity (effects.js:69)
我在互联网上到处搜索,尝试了原型版本和jquery版本的每一种组合,但似乎无法实现。它在控制台中填充了数千个错误,但有趣的是,它仍然可以工作,这很奇怪


有人对我能做什么或我能去哪里找有什么建议吗?

1。您使用了Highcharts标记,但您的问题似乎与使用此库无关。2. <代码>然后我遇到的第一个问题是highcharts需要一个新版本的jquery,-这不是真的,highcharts与jquery 1.6+@Sebastian Wędzel一起工作-感谢您的回复。很抱歉,是的,您是正确的,我刚刚将jquery版本恢复到其原始版本1.11.0,这在highcharts上运行良好,但仍然会按规定引发问题。我会调整我的问题和标签。@Ander Kew,别担心,Highcharts tag把我带到了这里,这就是我在上面指出的原因。不幸的是,我无法为您提供更多帮助,因为我根本不知道
prototypejs
。“我希望社区能为你提供一些解决方案。”塞巴斯蒂安·沃泽尔——在我们开始讨论这个问题之前,先问一个问题。我只是多玩了一会儿。如果我将原型和jquery版本保持在1.5和1.11.0 include highstocks.js,则不会有错误,但在创建图表时,我会得到错误Uncaught TypeError:(d | | |“”).split(…).reduce(…).join不是一个函数。鉴于highcharts可以与其他版本的jquery配合使用,这让我认为这是原型版本的问题,不是吗?顺便说一句,为了让prototype和jquery在同一个页面中正确工作,我必须将jquery设置为非冲突模式:$j=jquery.noConflict()@Ander Kew,我已经看到您使用了Highcharts的非常旧的一个版本-3.0.7-我担心Highstock的这个版本不存在-,所以我尝试使用不同版本的jQuery来重现这个问题,但我看不到任何冲突。。。原型可能会产生这个问题。演示: