jQuery 插件 Flot 碾压网站

问题描述 投票:0回答:2

使用 Flot 显示一些图表。 出乎意料的是,该网站开始崩溃。
问题出在 jquery.flot.js 中的这一行:

if (!c.getContext) // excanvas hack
    c = window.G_vmlCanvasManager.initElement(c);

例外:

G_vmlCanvasManager is undefined

与 Firefox 12 和真正的 Web 服务器配合良好。
与 Firefox 12 和 Visual Studio 2010(本地服务器)配合良好。
在使用 IE 9 和真实网络服务器时工作良好。
将 IE 9 与 Visual Studio 2010(本地服务器)一起使用时会崩溃。
开发计算机上没有安装 IIS。

重新安装VS并清除其缓存没有帮助。
下载新版本的 Flot 没有帮助。
禁用授权机制没有帮助。

欢迎任何建议。

jquery flot
2个回答
2
投票

该错误表明浏览器不支持 HTML5 canvas,并且您没有使用 Excanvas 插件来模拟它。

我的猜测是问题出在您的页面没有使用正确的 DOCTYPE:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

当 DOCTYPE 丢失或不正确时,IE9 会以怪异模式渲染页面,该模式不支持 HTML5 画布。然后,您要么不包含 excanvas.js,要么将其包含在

[if lte IE 8]
条件中,这不会触发,因为浏览器 is IE9。

您真正的 Web 服务器可能会自动添加 DOCTYPE,而 Visual Studio 则不会。如果是这种情况,那么您需要自己添加它,或者让 VS 服务器输出一个。


0
投票

你一开始就有这个包含所有内容的功能吗? : $(文档).ready(function() {

© www.soinside.com 2019 - 2024. All rights reserved.