IE中的jQPlot(使用rePlot或reDraw)

时间:2011-08-16 10:33:56

标签: internet-explorer jqplot excanvas

我使用jqplot插件在网站上显示标尺。这在FF / Safari / Chrome中完美运行,但必须使用excanvas在IE8中运行。

问题在于,仪表是动态创建的,因此值会通过,然后需要replot()功能来放置针头'在仪表上的位置。然而,当我在IE中使用replot()redraw()函数时,轴会被渲染,但实际的仪表显示在完全错误的位置(我只能看到元素内部的量程的顶角) )。

我已经读过强迫IE8使用

模拟IE7
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 

可以解决这个问题,但它并没有以任何方式对我产生影响。

如果还有其他任何我需要说的话。

3 个答案:

答案 0 :(得分:2)

  1. 请确保您使用最新版本的jQuery(每here)。

  2. 确保使用.Ready函数(每here)初始化jPlot。 $(document).ready(function() {

    $.jqplot(...init options...);

    });

  3. 确保包含jquery.jqplot.css(每here

  4. 禁用IE8中的自定义安全设置,称为&#34;二进制和脚本行为&#34; (按here

  5. 最后,它可能是一个错误。尝试发布问题here

    听起来jqPlot在IE8 / 9的这个时候非常错误。您可以尝试searching their site查看他们是否有解决方案。

答案 1 :(得分:2)

我使用JQPLot退出了一个专门针对IE8客户(公司网络)的程序,当我添加了额外的插件时,我遇到了很多异常。我首先要删除任何JQPlot插件,因为这有助于我解决我在JQPLot遇到的一些奇怪问题。

我还发现firebug lite比我的CSS问题的开发工具更快,你的声音听起来可能只是一个CSS问题。首先检查该元素以查看正在应用/覆盖的CSS将有所帮助。您可以添加IE CSS条件http://www.quirksmode.org/css/condcom.html。最后,您的DOCTYPE将对IE呈现您的内容的方式产生重大影响:http://www.quirksmode.org/css/quirksmode.html

如果以上所有方法都不起作用,我只是通过加载未压缩的JS并打破我需要的功能来解决几个JQPlot问题。如果使用IE开发人员工具,只需给出一个通用抛出('fail')来破解比试图处理IE Developer Tools的JS断点系统要快得多。

答案 2 :(得分:1)

尝试使用:

<meta http-equiv="X-UA-Compatible" content="IE=8" /> 

即使我已经在使用IE8

,它也适用于我