gpt4 book ai didi

javascript - 我该如何解决这个 javascript 冲突困惑(jquery + prototype + google visualization + PRADO php)?

转载 作者:行者123 更新时间:2023-11-30 18:38:28 25 4
gpt4 key购买 nike

我有一个在 Prado 2.1RC1 上运行的相对较旧的 Web 应用程序,我试图通过添加一些不错的 google visualizations charts 来增强它.

问题出现在集成google jsapi(依赖于jquery)和prado2.1使用的旧库时。​​

Prado 使用一些内置库(其中一些是base.jsdom.jsajax.js 等) + 原型(prototype) 1.4

在我尝试整合 tutorial example 的第一刻我在 chrome javascript 控制台中记录了两个错误。

Uncaught RangeError: Invalid array length on base.js:524

Uncaught TypeError: undefined is not a function

查看 base.js 我发现那些错误是由 shift 函数中的原型(prototype)错误引起的(我认为),因为 shift 是这样实现的:

shift function() {
var result = this[0];
for (var i = 0; i < this.length - 1; i++)
this[i] = this[i + 1];
this.length--;
return result;
}

但是当this.length==0时,this.length--爆炸。

因此,在修复此错误后,我曾希望 google nice 图表会出现……但没有。在 javascript 控制台中没有抛出错误,但我在应该附加谷歌图表的 div 中得到了以红色背景呈现的文本:

number is not a function

我不知道这个错误。我怀疑 Web 应用程序所需的大量 JavaScript 库有些困惑。

考虑到我使用的是旧的、已弃用的、不受支持的 Prado 和 Prototype 版本,我知道情况不太好。但我对 php 和这个框架非常陌生。我真的不知道我需要多少时间才能迁移到新的 Prado 版本来更新 javascript 库,我什至知道我是否能够做到这一点。也许你们中一些更有经验的人可以告诉我在这种情况下最好的做法是什么,或者我应该如何进行...

谢谢!!如果您需要问题的更多详细信息,请告诉我。

最佳答案

我不确定这是否正是您的问题,但据我了解,您似乎在尝试将 jquery/google jsapi 集成到项目中时注意到了问题。

你应该不需要jquery,可以直接加载jsapi(和必要的可视化包)。这些应该命名空间(如 google.x.y)并且不会干扰您的其他代码 - 尽管我可能错误地认为这可能会把事情搞砸。

下面是不使用 jquery 加载 jsapi 的方法:

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load('visualization', '1', {packages: ['table']});
</script>

是这个问题吗?

关于javascript - 我该如何解决这个 javascript 冲突困惑(jquery + prototype + google visualization + PRADO php)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7534540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com