0

私は学校の小さなアプリケーションで作業しています。これは、ポップアップ内にいくつかのチャートを提供する必要があります。

問題は、私が入れたときのテストの途中です

<canvas id="myChart" width="500" height="400"></canvas> element_to_pop_up ID 内では機能しません。

これをわかりやすくするために Fiddle を作成しました。

https://jsfiddle.net/enanotg/od90stph/

助けてください!

4

1 に答える 1

1

bpopup refrence に問題があるようです。JavaScript セクションの先頭に bpopup コードを含めることで、フィドルでこれを回避しました。したがって、実際のアプリケーション コードについては、セクションの一番下までスクロールしてください。

キャンバス要素が表示されると、グラフを描画できます。したがって、チャートコードをwindow.onloadからbpopupがトリガーされた後に移動します

(function ($) {
    // DOM Ready
    $(function () {
        // Binding a click event
        // From jQuery v.1.7.0 use .on() instead of .bind()
        $('#my-button').bind('click', function (e) {

            // Prevents the default action to be triggered. 
            e.preventDefault();

            // Triggering bPopup when click event is fired
            $('#element_to_pop_up').bPopup();

            var ctx = document.getElementById("myChart").getContext("2d");
            var step = 1;
            var max = 24;
            var start = 8;
            window.myLine = new Chart(ctx).LineAlt(lineChartData, {
                responsive: false,
                scaleOverride: true,
                scaleSteps: Math.ceil((max - start) / step),
                scaleStepWidth: step,
                scaleStartValue: start,
                pointDot: false,
                datasetFill: false,
                showTooltips: false,
            });
        });
    });
})(jQuery);

フィドル - https://jsfiddle.net/o8twjcrL/

于 2015-06-04T04:32:16.010 に答える