首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未捕获ReferenceError:未定义Viva

未捕获ReferenceError:未定义Viva
EN

Stack Overflow用户
提问于 2013-10-25 03:30:47
回答 3查看 525关注 0票数 0

JS新手。不知道为什么当我在Chrome中加载它时,我得到了下面的错误。vivagraph.js文件与html位于同一目录中。

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html>
<head>
    <title>01. Create Graph. Vivagraph SVG tutorial.</title>
    <script type="text/javascript" src="./vivagraph.js"></script>
    <script type="text/javascript">
        function main () {
            // Step 1. We create a graph object.
            var graph = Viva.Graph.graph();

            // Step 2. We add nodes and edges to the graph:
            graph.addLink(1, 2);

            /* Note: graph.addLink() creates new nodes if they are not yet 
               present in the graph. Thus calling this method is equivalent to:

               graph.addNode(1);
               graph.addNode(2);
               graph.addLink(1, 2);
            */

            // Step 3. Render the graph.
            var renderer = Viva.Graph.View.renderer(graph);
            renderer.run();
        }
    </script>

    <style type="text/css" media="screen">
        html, body, svg { width: 100%; height: 100%;}
    </style>
</head>
<body onload='main()'>

</body>
</html>
EN

Stack Overflow用户

发布于 2013-10-25 03:36:37

在viva脚本完成解析之前,正在执行main()。您不需要将main()绑定到body onload,而是绑定到document.ready

很多像jQuery这样的框架都会管理细节,但你可以通过将对main的调用放在页面底部附近的一个闭包中来实现大致相同的效果:

代码语言:javascript
运行
复制
</html>
<script type="text/javascript">var foo=(function() {main();})();</script>
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19574923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档