我目前正在使用cordova 和ChartJS 创建一个应用程序——我正在渲染一个圆环图,它在模拟器中运行良好,但是当我在ipad/ipod/iphone 上测试该应用程序时,图表没有渲染。

function renderMainClock(hourId) {

        var clockData = gVMainClockData[hourId - 1];
        var ctx = document.getElementById("main-clock").getContext("2d");
        window.mainClock = new Chart(ctx).Doughnut(clockData, {responsive:true});

        alert(ctx);

    }

该警报在模拟器中被调用,但在 iOS 设备上运行时从未被调用。

有谁知道问题是什么?

这也是我的 index.html:
<!DOCTYPE html>

<html>


    <head>

        <link rel="stylesheet" type="text/css" href="css/materialize.min.css" media="screen,projection"/>
        <link rel="stylesheet" type="text/css" href="css/font-awesome.min.css"/>
        <link rel="stylesheet" type="text/css" href="css/index.css"/>



        <title>NUH Nursing Activity</title>

    </head>

    <body>

        <!-- Top Bar -->
        <div id="top-bar"></div>

        <!-- Navigation -->
        <div class="">
            <nav>
                <div class="nav-wrapper blue darken-4">
                    <a href="#" class="brand-logo">NUH Nursing Activity</a>
                    <ul class="right">
                        <li><a href="#"><i class="mdi-action-info"></i></a></li>
                    </ul>
                </div>
            </nav>
        </div>

        <div class="container-custom">

            <div class="center small-circle-padding">
                <div id="small-circles"></div>
            </div>

            <div id="canvas-holder" class="center">
                <canvas id="main-clock"></canvas>
            </div>

            <div class="card red darken-1">
                <div class="card-content white-text">
                    <p>Current Shift Hour: 1</p>
                </div>
            </div>

            <div class="row">
                <div class="col s5">
                    <a class="btn blue darken-2">Add</a>
                </div>
                <div class="col s7 right">
                    <a class="btn blue darken-4 right disabled">Finish</a>
                </div>
            </div>


        </div>

        <!-- Include Relevant JavaScript -->
        <script type="text/javascript" src="js/jquery-2.1.4.min.js"></script>
        <script type="text/javascript" src="cordova.js"></script>

        <script type="text/javascript" src="js/globalVariables.js"></script>
        <script tyoe="text/javascript" src="js/materialize.min.js"></script>

        <script type="text/javascript" src="js/chart.min.js"></script>

        <script type="text/javascript" src="js/appStart.js"></script>
        <script type="text/javascript" src="js/mainClock.js"></script>

    </body>


</html>

最佳答案

您是否尝试过在 Chart.js 下评论以下代码?
helpers.retinaScale(this.chart);
这往往可以解决问题。

关于javascript - 图表 JS 未在 iOS 设备上呈现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30349894/

10-12 13:51