4

私はphiloglライブラリで何かを試しています、そして私が書いたとき、

<!DOCTYPE html>

<html>
<head>
    <title>PGL2</title>
    <script type="text/javascript" src="PhiloGL.js"></script>
    <script type="text/javascript">
    function webGLStart(){
        alert('I m alive');
    }
</script>
</head>

<body onload="webGLStart();">
<canvas id="c" style="width:500px; height:500px;"></canvas>


</body>
</html>

すべてが正常に動作しますが、私がそれにいくつかのphiloglを書くと、

<!DOCTYPE html>

<html>
<head>
    <title>PGL2</title>
    <script type="text/javascript" src="PhiloGL.js"></script>
    <script type="text/javascript">
    function webGLStart(){
        var triangle = new PhiloGL.O3D.Model({
            vertices: [[0,1,0],[-1,-1,0],[1,-1,0]],
            colors: [[1,0,0,1],[0,1,0,1],[0,0,1,1]]
            });
        var square = new PhiloGL.O3D.Model({
            vertices: [[1,1,0],[-1,1,0],[1,-1,0],[-1,-1,0]],
            colors: [[0.5,0.5,1,1],[0.5,0.5,1,1]],[0.5,0.5,1,1]
            });
    }
</script>
</head>

<body onload="webGLStart();">
<canvas id="c" style="width:500px; height:500px;"></canvas>


</body>
</html>

chromeとfirefoxで、webGLStart()が定義されていないというエラーが表示されます。私のコードの何が問題になっていますか?

4

2 に答える 2

8

この行:

        colors: [[0.5,0.5,1,1],[0.5,0.5,1,1]],[0.5,0.5,1,1]

構文的に正しくありません。閉じている「]」が間違った場所にあります。したがって、関数定義は、いわば「失敗」し、関数は実際には存在しません。

私は文字通り目が覚めただけなので、それを見つけることができたのは何が悪いのかわかりません。

于 2011-02-25T13:04:19.857 に答える
0

この「philogl」の使用方法にエラーがあり、関数が完全に解釈されない可能性があります。特に、角かっこで構文エラーが発生します。その後、関数は未定義のままになります。

将来的には、Firebug(またはお好みのブラウザに相当するもの)のエラーコンソールをオンにして、何が間違っているかを確認できます。

また、document.onload = function() { ... }HTMLタグにスクリプトを埋め込むのではなく、スクリプトを使用することをお勧めします。

于 2011-02-25T13:05:16.780 に答える