简体   繁体   中英

morris.js Graph container element not found

Why am I getting an exception

Uncaught Error: Graph container element not found

when using morris.js ?

Solution: Put the javascript after the morris.js div

From this post from tiraeth: https://github.com/morrisjs/morris.js/issues/137

if don' t use the chart on this page, you can do this:

  1. Go to the line where the exception is throwed in morris.js
  2. change it like this: before:

     if (this.el === null || this.el.length === 0) { return; // throw new Error("Graph placeholder not found."); }

I had this issue when I was using the node.js framework. Taking out the script tags containing the morris charts and the jquery from the bottom of the html file worked for me. I am using Require.js to load the dependencies for my project instead. I hope this helped.

JavaScript's code gets executed before the DOM contains #annual element. Put the javascript after the div or use jQuery.ready()

Try This

<head>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/raphael/2.1.0/raphael-min.js"></script>
    <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <script src="http://cdn.oesmith.co.uk/morris-0.4.1.min.js"></script>
</head>
<body>
    <div id="donut-example"></div>

                    <script type="text/javascript">
                        Morris.Donut({
                            element: 'donut-example',
                            data: [
                              { label: "Download Sales", value: 12 },
                              { label: "In-Store Sales", value: 30 },
                              { label: "Mail-Order Sales", value: 20 }
                            ]
                        });
                    </script>

    </div>
</body>

I have copied some scripts containing morris implementation and had this problem. Apparently, the scripts are initializing 3 morris charts when in my HTML I only had implemented 1 element, so it was failing to initialize the bars for the unexisting elements

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM