为什么我的jqPlot没有渲染画布?
问题描述:
我正在尝试将jqPlot用于条形图,但无法显示任何内容。为什么我的jqPlot没有渲染画布?
我已经包含了jqPlot代码和所有插件。我没有收到任何错误,任何
我都直接复制示例代码:
HTML:
<div id="jqplot" class="plot">
</div>
的Javascript:
"use strict";
(function ($){
$.jqplot('jqplot', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);
})(jQuery);
它添加类的jqplot目标'到'jqplot'div,所以javascript必须工作,但它不是添加一个画布/图表到div,它只显示一个空的div与它添加的类。
任何想法,为什么这不是呈现?
我也在使用html5boilerplate,但是我找不到任何已知的问题。
感谢,
托马斯
答
我发现了这个问题。我有jqplot里面的主容器div设置为显示:页面加载时没有,并且一旦你点击'enter'按钮,就会显示.fadeIn()
我想它不能添加画布父级显示:无; - 我知道了通过调用在后的用户点击进入主容器变淡函数内部的$ .jqplot工作...
答
使用生成的图表上重绘功能,当你点击你的按钮。
// create your chart
var plot1 = $.jqplot(...);
// hook the button press
$("button#enter").on("click", function(){
// fade your tab in, wait for it to complete,
$(".tab").fadeIn(1000, function(){
// then replot, if not already drawn
if(!plot1._drawCount){
plot1.replot();
}
});
});
http://www.jqplot.com/deploy/dist/examples/hiddenPlotsInTabs.html
答
我就遇到了这个问题前面,出于某种原因,下面jqplot代码是行不通的:
$(document).ready(function() {
$.jqplot('chart1', [[[1, 2], [3, 5.12], [5, 13.1], [7, 33.6], [9, 85.9], [11, 219.9]]]);
}
然而,当我切换了$(文件)。就绪(function {...} to jQuery(function($){..} jqplot代码正常工作
jQuery(function ($) {
$.jqplot('chart1', [[[1, 2], [3, 5.12], [5, 13.1], [7, 33.6], [9, 85.9], [11, 219.9]]]);
}
我直接将宽度/高度添加到# jqplot以及我已经改变它到这个
,它仍然没有渲染。当我在没有样板的空白页面上做这件事时,它表现得很好...... – tsdexter感谢您的意见。我发现了这个问题。查看更新的问题。 – tsdexter